library(knitr)
library(xlsx)
## Loading required package: rJava
## Loading required package: xlsxjars
file <- system.file("tests", "test_import.xlsx",
package = "xlsx")
From an Excel sheet to a data frame
Simple function read.xlsx()
sheet <- read.xlsx(file, 2)
kable(sheet)
| 2009-01-01 |
Jan |
1 |
TRUE |
-1.123000e+00 |
2009-01-01 01:01:01 |
| 2009-02-01 |
Feb |
2 |
FALSE |
1.123000e+00 |
2009-02-01 02:02:01 |
| 2009-03-01 |
Mar |
3 |
TRUE |
3.162278e+01 |
2009-03-01 03:03:02 |
| 2009-04-01 |
Apr |
4 |
FALSE |
1.414214e+00 |
2009-04-01 04:04:03 |
| 2009-05-01 |
May |
5 |
TRUE |
3.010300e-01 |
2009-05-01 05:05:04 |
| 2009-06-01 |
Jun |
6 |
FALSE |
1.000000e+210 |
2009-06-01 06:06:05 |
| 2009-07-01 |
Jul |
7 |
TRUE |
0.000000e+00 |
2009-07-01 07:07:06 |
| 2009-08-01 |
Aug |
8 |
FALSE |
0.000000e+00 |
2009-08-01 08:08:07 |
| 2009-09-01 |
Sep |
9 |
TRUE |
-1.230000e-01 |
2009-09-01 09:09:08 |
| 2009-10-01 |
Oct |
10 |
FALSE |
8.770000e-01 |
2009-10-01 10:10:09 |
| 2009-11-01 |
Nov |
11 |
TRUE |
1.877000e+00 |
2009-11-01 11:11:10 |
| 2009-12-01 |
Dec |
12 |
FALSE |
2.877000e+00 |
2009-12-01 12:12:11 |
Lower level, with access to workbook and sheet objects
wb <- loadWorkbook(file)
sheets <- getSheets(wb)
sheet <- sheets[[2]] # extract the second sheet
List of java methods available
# see all the available java methods that you can call
.jmethods(sheet)
## [1] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setForceFormulaRecalculation(boolean)"
## [2] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.getForceFormulaRecalculation()"
## [3] "public org.apache.poi.ss.usermodel.Drawing org.apache.poi.xssf.usermodel.XSSFSheet.createDrawingPatriarch()"
## [4] "public org.apache.poi.xssf.usermodel.XSSFDrawing org.apache.poi.xssf.usermodel.XSSFSheet.createDrawingPatriarch()"
## [5] "public void org.apache.poi.xssf.usermodel.XSSFSheet.ungroupRow(int,int)"
## [6] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isSelected()"
## [7] "public static void org.apache.poi.xssf.usermodel.XSSFSheet.setCellComment(java.lang.String,org.apache.poi.xssf.usermodel.XSSFComment)"
## [8] "public void org.apache.poi.xssf.usermodel.XSSFSheet.addHyperlink(org.apache.poi.xssf.usermodel.XSSFHyperlink)"
## [9] "public java.lang.String org.apache.poi.xssf.usermodel.XSSFSheet.getActiveCell()"
## [10] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setActiveCell(java.lang.String)"
## [11] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.hasComments()"
## [12] "public org.apache.poi.xssf.usermodel.XSSFRow org.apache.poi.xssf.usermodel.XSSFSheet.getRow(int)"
## [13] "public org.apache.poi.ss.usermodel.Row org.apache.poi.xssf.usermodel.XSSFSheet.getRow(int)"
## [14] "public int[] org.apache.poi.xssf.usermodel.XSSFSheet.getRowBreaks()"
## [15] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.getRowSumsBelow()"
## [16] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setRowSumsBelow(boolean)"
## [17] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.getRowSumsRight()"
## [18] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setRowSumsRight(boolean)"
## [19] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.getScenarioProtect()"
## [20] "public short org.apache.poi.xssf.usermodel.XSSFSheet.getTopRow()"
## [21] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.getVerticallyCenter()"
## [22] "public void org.apache.poi.xssf.usermodel.XSSFSheet.groupColumn(int,int)"
## [23] "public void org.apache.poi.xssf.usermodel.XSSFSheet.groupRow(int,int)"
## [24] "public org.apache.poi.xssf.usermodel.XSSFComment org.apache.poi.xssf.usermodel.XSSFSheet.createComment()"
## [25] "public org.apache.poi.ss.usermodel.Row org.apache.poi.xssf.usermodel.XSSFSheet.createRow(int)"
## [26] "public org.apache.poi.xssf.usermodel.XSSFRow org.apache.poi.xssf.usermodel.XSSFSheet.createRow(int)"
## [27] "public void org.apache.poi.xssf.usermodel.XSSFSheet.createSplitPane(int,int,int,int,int)"
## [28] "public org.apache.poi.ss.usermodel.Comment org.apache.poi.xssf.usermodel.XSSFSheet.getCellComment(int,int)"
## [29] "public org.apache.poi.xssf.usermodel.XSSFComment org.apache.poi.xssf.usermodel.XSSFSheet.getCellComment(int,int)"
## [30] "public org.apache.poi.xssf.usermodel.XSSFHyperlink org.apache.poi.xssf.usermodel.XSSFSheet.getHyperlink(int,int)"
## [31] "public int[] org.apache.poi.xssf.usermodel.XSSFSheet.getColumnBreaks()"
## [32] "public org.openxmlformats.schemas.spreadsheetml.x2006.main.CTWorksheet org.apache.poi.xssf.usermodel.XSSFSheet.getCTWorksheet()"
## [33] "public java.lang.String org.apache.poi.xssf.usermodel.XSSFSheet.getSheetName()"
## [34] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setFitToPage(boolean)"
## [35] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setHorizontallyCenter(boolean)"
## [36] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setVerticallyCenter(boolean)"
## [37] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setRowGroupCollapsed(int,boolean)"
## [38] "public int org.apache.poi.xssf.usermodel.XSSFSheet.findEndOfRowOutlineGroup(int)"
## [39] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setZoom(int)"
## [40] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setZoom(int,int)"
## [41] "public void org.apache.poi.xssf.usermodel.XSSFSheet.shiftRows(int,int,int,boolean,boolean)"
## [42] "public void org.apache.poi.xssf.usermodel.XSSFSheet.shiftRows(int,int,int)"
## [43] "public void org.apache.poi.xssf.usermodel.XSSFSheet.showInPane(int,int)"
## [44] "public void org.apache.poi.xssf.usermodel.XSSFSheet.showInPane(short,short)"
## [45] "public void org.apache.poi.xssf.usermodel.XSSFSheet.ungroupColumn(int,int)"
## [46] "public int org.apache.poi.xssf.usermodel.XSSFSheet.addMergedRegion(org.apache.poi.ss.util.CellRangeAddress)"
## [47] "public void org.apache.poi.xssf.usermodel.XSSFSheet.autoSizeColumn(int)"
## [48] "public void org.apache.poi.xssf.usermodel.XSSFSheet.autoSizeColumn(int,boolean)"
## [49] "public void org.apache.poi.xssf.usermodel.XSSFSheet.createFreezePane(int,int)"
## [50] "public void org.apache.poi.xssf.usermodel.XSSFSheet.createFreezePane(int,int,int,int)"
## [51] "public org.openxmlformats.schemas.spreadsheetml.x2006.main.CTCellFormula org.apache.poi.xssf.usermodel.XSSFSheet.getSharedFormula(int)"
## [52] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isAutoFilterLocked()"
## [53] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isDeleteColumnsLocked()"
## [54] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isDeleteRowsLocked()"
## [55] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isFormatCellsLocked()"
## [56] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isFormatColumnsLocked()"
## [57] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isFormatRowsLocked()"
## [58] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isInsertColumnsLocked()"
## [59] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isInsertHyperlinksLocked()"
## [60] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isInsertRowsLocked()"
## [61] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isPivotTablesLocked()"
## [62] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isSortLocked()"
## [63] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isObjectsLocked()"
## [64] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isScenariosLocked()"
## [65] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isSelectLockedCellsLocked()"
## [66] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isSelectUnlockedCellsLocked()"
## [67] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isSheetLocked()"
## [68] "public void org.apache.poi.xssf.usermodel.XSSFSheet.enableLocking()"
## [69] "public void org.apache.poi.xssf.usermodel.XSSFSheet.disableLocking()"
## [70] "public void org.apache.poi.xssf.usermodel.XSSFSheet.lockAutoFilter()"
## [71] "public void org.apache.poi.xssf.usermodel.XSSFSheet.lockDeleteColumns()"
## [72] "public void org.apache.poi.xssf.usermodel.XSSFSheet.lockDeleteRows()"
## [73] "public void org.apache.poi.xssf.usermodel.XSSFSheet.lockFormatCells()"
## [74] "public void org.apache.poi.xssf.usermodel.XSSFSheet.lockFormatColumns()"
## [75] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setColumnHidden(int,boolean)"
## [76] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setColumnWidth(int,int)"
## [77] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setDefaultColumnStyle(int,org.apache.poi.ss.usermodel.CellStyle)"
## [78] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setDefaultColumnWidth(int)"
## [79] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setDefaultRowHeight(short)"
## [80] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setDefaultRowHeightInPoints(float)"
## [81] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setDisplayFormulas(boolean)"
## [82] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setRepeatingRows(org.apache.poi.ss.util.CellRangeAddress)"
## [83] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setRepeatingColumns(org.apache.poi.ss.util.CellRangeAddress)"
## [84] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setSelected(boolean)"
## [85] "public org.apache.poi.ss.usermodel.CellRange org.apache.poi.xssf.usermodel.XSSFSheet.removeArrayFormula(org.apache.poi.ss.usermodel.Cell)"
## [86] "public org.apache.poi.ss.usermodel.DataValidationHelper org.apache.poi.xssf.usermodel.XSSFSheet.getDataValidationHelper()"
## [87] "public java.util.List org.apache.poi.xssf.usermodel.XSSFSheet.getDataValidations()"
## [88] "public void org.apache.poi.xssf.usermodel.XSSFSheet.addValidationData(org.apache.poi.ss.usermodel.DataValidation)"
## [89] "public int org.apache.poi.xssf.usermodel.XSSFSheet.getColumnWidth(int)"
## [90] "public int org.apache.poi.xssf.usermodel.XSSFSheet.getDefaultColumnWidth()"
## [91] "public short org.apache.poi.xssf.usermodel.XSSFSheet.getDefaultRowHeight()"
## [92] "public float org.apache.poi.xssf.usermodel.XSSFSheet.getDefaultRowHeightInPoints()"
## [93] "public org.apache.poi.ss.usermodel.CellStyle org.apache.poi.xssf.usermodel.XSSFSheet.getColumnStyle(int)"
## [94] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setRightToLeft(boolean)"
## [95] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isRightToLeft()"
## [96] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.getDisplayGuts()"
## [97] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setDisplayGuts(boolean)"
## [98] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isDisplayZeros()"
## [99] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setDisplayZeros(boolean)"
## [100] "public int org.apache.poi.xssf.usermodel.XSSFSheet.getFirstRowNum()"
## [101] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.getFitToPage()"
## [102] "public org.apache.poi.ss.usermodel.Footer org.apache.poi.xssf.usermodel.XSSFSheet.getFooter()"
## [103] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setAutobreaks(boolean)"
## [104] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setColumnBreak(int)"
## [105] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setColumnGroupCollapsed(int,boolean)"
## [106] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isColumnBroken(int)"
## [107] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isColumnHidden(int)"
## [108] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isDisplayFormulas()"
## [109] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isDisplayGridlines()"
## [110] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setDisplayGridlines(boolean)"
## [111] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isDisplayRowColHeadings()"
## [112] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setDisplayRowColHeadings(boolean)"
## [113] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isPrintGridlines()"
## [114] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setPrintGridlines(boolean)"
## [115] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.isRowBroken(int)"
## [116] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setRowBreak(int)"
## [117] "public void org.apache.poi.xssf.usermodel.XSSFSheet.removeColumnBreak(int)"
## [118] "public void org.apache.poi.xssf.usermodel.XSSFSheet.removeMergedRegion(int)"
## [119] "public void org.apache.poi.xssf.usermodel.XSSFSheet.removeRow(org.apache.poi.ss.usermodel.Row)"
## [120] "public void org.apache.poi.xssf.usermodel.XSSFSheet.removeRowBreak(int)"
## [121] "public java.util.Iterator org.apache.poi.xssf.usermodel.XSSFSheet.rowIterator()"
## [122] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.getAutobreaks()"
## [123] "public org.apache.poi.xssf.usermodel.helpers.ColumnHelper org.apache.poi.xssf.usermodel.XSSFSheet.getColumnHelper()"
## [124] "public org.apache.poi.xssf.usermodel.XSSFWorkbook org.apache.poi.xssf.usermodel.XSSFSheet.getWorkbook()"
## [125] "public org.apache.poi.ss.usermodel.Workbook org.apache.poi.xssf.usermodel.XSSFSheet.getWorkbook()"
## [126] "public org.apache.poi.xssf.usermodel.XSSFAutoFilter org.apache.poi.xssf.usermodel.XSSFSheet.setAutoFilter(org.apache.poi.ss.util.CellRangeAddress)"
## [127] "public org.apache.poi.ss.usermodel.AutoFilter org.apache.poi.xssf.usermodel.XSSFSheet.setAutoFilter(org.apache.poi.ss.util.CellRangeAddress)"
## [128] "public org.apache.poi.xssf.usermodel.XSSFTable org.apache.poi.xssf.usermodel.XSSFSheet.createTable()"
## [129] "public java.util.List org.apache.poi.xssf.usermodel.XSSFSheet.getTables()"
## [130] "public org.apache.poi.ss.usermodel.SheetConditionalFormatting org.apache.poi.xssf.usermodel.XSSFSheet.getSheetConditionalFormatting()"
## [131] "public org.apache.poi.xssf.usermodel.XSSFSheetConditionalFormatting org.apache.poi.xssf.usermodel.XSSFSheet.getSheetConditionalFormatting()"
## [132] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setTabColor(int)"
## [133] "public org.apache.poi.ss.util.CellRangeAddress org.apache.poi.xssf.usermodel.XSSFSheet.getRepeatingRows()"
## [134] "public org.apache.poi.ss.util.CellRangeAddress org.apache.poi.xssf.usermodel.XSSFSheet.getRepeatingColumns()"
## [135] "public org.apache.poi.ss.usermodel.Header org.apache.poi.xssf.usermodel.XSSFSheet.getHeader()"
## [136] "public org.apache.poi.ss.usermodel.Footer org.apache.poi.xssf.usermodel.XSSFSheet.getOddFooter()"
## [137] "public org.apache.poi.ss.usermodel.Footer org.apache.poi.xssf.usermodel.XSSFSheet.getEvenFooter()"
## [138] "public org.apache.poi.ss.usermodel.Footer org.apache.poi.xssf.usermodel.XSSFSheet.getFirstFooter()"
## [139] "public org.apache.poi.ss.usermodel.Header org.apache.poi.xssf.usermodel.XSSFSheet.getOddHeader()"
## [140] "public org.apache.poi.ss.usermodel.Header org.apache.poi.xssf.usermodel.XSSFSheet.getEvenHeader()"
## [141] "public org.apache.poi.ss.usermodel.Header org.apache.poi.xssf.usermodel.XSSFSheet.getFirstHeader()"
## [142] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.getHorizontallyCenter()"
## [143] "public int org.apache.poi.xssf.usermodel.XSSFSheet.getLastRowNum()"
## [144] "public short org.apache.poi.xssf.usermodel.XSSFSheet.getLeftCol()"
## [145] "public double org.apache.poi.xssf.usermodel.XSSFSheet.getMargin(short)"
## [146] "public void org.apache.poi.xssf.usermodel.XSSFSheet.setMargin(short,double)"
## [147] "public org.apache.poi.ss.util.CellRangeAddress org.apache.poi.xssf.usermodel.XSSFSheet.getMergedRegion(int)"
## [148] "public int org.apache.poi.xssf.usermodel.XSSFSheet.getNumMergedRegions()"
## [149] "public int org.apache.poi.xssf.usermodel.XSSFSheet.getNumHyperlinks()"
## [150] "public org.apache.poi.hssf.util.PaneInformation org.apache.poi.xssf.usermodel.XSSFSheet.getPaneInformation()"
## [151] "public int org.apache.poi.xssf.usermodel.XSSFSheet.getPhysicalNumberOfRows()"
## [152] "public org.apache.poi.ss.usermodel.PrintSetup org.apache.poi.xssf.usermodel.XSSFSheet.getPrintSetup()"
## [153] "public org.apache.poi.xssf.usermodel.XSSFPrintSetup org.apache.poi.xssf.usermodel.XSSFSheet.getPrintSetup()"
## [154] "public boolean org.apache.poi.xssf.usermodel.XSSFSheet.getProtect()"
## [155] "public void org.apache.poi.xssf.usermodel.XSSFSheet.protectSheet(java.lang.String)"
## [156] "public void org.apache.poi.xssf.usermodel.XSSFSheet.lockFormatRows()"
## [157] "public void org.apache.poi.xssf.usermodel.XSSFSheet.lockInsertColumns()"
## [158] "public void org.apache.poi.xssf.usermodel.XSSFSheet.lockInsertHyperlinks()"
## [159] "public void org.apache.poi.xssf.usermodel.XSSFSheet.lockInsertRows()"
## [160] "public void org.apache.poi.xssf.usermodel.XSSFSheet.lockPivotTables()"
## [161] "public void org.apache.poi.xssf.usermodel.XSSFSheet.lockSort()"
## [162] "public void org.apache.poi.xssf.usermodel.XSSFSheet.lockObjects()"
## [163] "public void org.apache.poi.xssf.usermodel.XSSFSheet.lockScenarios()"
## [164] "public void org.apache.poi.xssf.usermodel.XSSFSheet.lockSelectLockedCells()"
## [165] "public void org.apache.poi.xssf.usermodel.XSSFSheet.lockSelectUnlockedCells()"
## [166] "public org.apache.poi.ss.usermodel.CellRange org.apache.poi.xssf.usermodel.XSSFSheet.setArrayFormula(java.lang.String,org.apache.poi.ss.util.CellRangeAddress)"
## [167] "public java.util.Iterator org.apache.poi.xssf.usermodel.XSSFSheet.iterator()"
## [168] "public final org.apache.poi.openxml4j.opc.PackagePart org.apache.poi.POIXMLDocumentPart.getPackagePart()"
## [169] "public final void org.apache.poi.POIXMLDocumentPart.addRelation(java.lang.String,org.apache.poi.POIXMLDocumentPart)"
## [170] "public final org.apache.poi.POIXMLDocumentPart org.apache.poi.POIXMLDocumentPart.getRelationById(java.lang.String)"
## [171] "public final java.lang.String org.apache.poi.POIXMLDocumentPart.getRelationId(org.apache.poi.POIXMLDocumentPart)"
## [172] "public final java.util.List org.apache.poi.POIXMLDocumentPart.getRelations()"
## [173] "public final org.apache.poi.openxml4j.opc.PackageRelationship org.apache.poi.POIXMLDocumentPart.getPackageRelationship()"
## [174] "public final org.apache.poi.POIXMLDocumentPart org.apache.poi.POIXMLDocumentPart.createRelationship(org.apache.poi.POIXMLRelation,org.apache.poi.POIXMLFactory)"
## [175] "public final org.apache.poi.POIXMLDocumentPart org.apache.poi.POIXMLDocumentPart.createRelationship(org.apache.poi.POIXMLRelation,org.apache.poi.POIXMLFactory,int)"
## [176] "public java.lang.String org.apache.poi.POIXMLDocumentPart.toString()"
## [177] "public final org.apache.poi.POIXMLDocumentPart org.apache.poi.POIXMLDocumentPart.getParent()"
## [178] "public final void java.lang.Object.wait(long,int) throws java.lang.InterruptedException"
## [179] "public final native void java.lang.Object.wait(long) throws java.lang.InterruptedException"
## [180] "public final void java.lang.Object.wait() throws java.lang.InterruptedException"
## [181] "public boolean java.lang.Object.equals(java.lang.Object)"
## [182] "public native int java.lang.Object.hashCode()"
## [183] "public final native java.lang.Class java.lang.Object.getClass()"
## [184] "public final native void java.lang.Object.notify()"
## [185] "public final native void java.lang.Object.notifyAll()"
# for example
sheet$getLastRowNum()
## [1] 12