使用R中的openxlsx从Excel工作表中读取一列

时间:2017-08-02 01:53:50

标签: r excel multiple-columns

我正在尝试使用R中的Openxls读取特定列。问题是列中的数据不在一起。 以下是我的代码:

    library("openxlsx")
    excel0111 <- loadWorkbook("C:\\path\\0111F.xlsx")
    sheet_names <- names(excel0111)
    c0111 <- read.xlsx(excel0111, sheet = sheet_names[1],cols = 2, rows = c(4:27)) # reading data from (B4:B27)

然而输出如下:

    213
1   188
2   183
3   260
4   389
5   680
6  1614
7  2044
8  1544
9  1261
10 1040
11  991
12  999
13 1045
14 1133
15 1183
16 1238
17 1334
18 1122
19  690
20  607
21  524
22  366
23  390

我想要输出如下:

1   213
2   188
3   183
4   260
5   389
6   680
7  1614
8  2044
9  1544
10  1261
11 1040
12  991
13  999
14 1045
15 1133
16 1183
17 1238
18 1334
19 1122
20  690
21  607
22  524
23  366
24  390

最后,我将使用循环从excel文件的所有表中获取相同的列,如下所示:

for (i in 1:212) {


   c0111[i] <- read.xlsx(excel0111, sheet = sheet_names[i], skipEmptyRows = FALSE,cols = c(2), rows = c(4:27))
}

谢谢!

1 个答案:

答案 0 :(得分:1)

默认情况下,colNames参数设置为TRUE。将其设置为FALSE,您的read.xlsx函数调用不会将第一行解释为列标题:

c0111 <- read.xlsx(excel0111, sheet = sheet_names[1], colNames = FALSE, cols = 2, rows = c(4:27))