我正在将 Excel 文件中的数据读取到 R 中的 data.table 中。该文件的格式如下:
COL_1_STUFF COL_2_STUFF COL_3_STUFF
ID EST MOE PCT EST MOE PCT EST MOE PCT
也就是说,对于每个变量(COL
s),都有一个估计值、一个误差范围和一个给定的百分比。
麻烦是由 造成的read.xlsx2
,我用它来导入文件,如下所示:
data <- as.data.table(read.xlsx2(
"file.xlsx", sheetIndex = 1L, colIndex = c(1L, 4L, 7L), startRow = 2L))
问题是read.xlsx2
为一堆东西分配了相同的列名——导入看起来像:
ID EST EST EST
即使我设置header = FALSE
了,我也很容易得到类似的东西
X1 X2 X2 X2
为了避免这种情况,我在导入后做了以下操作:
data[ , c("col1_est", "EST") := .(EST, NULL)]
data[ , c("col2_est", "EST") := .(EST, NULL)]
data[ , c("col3_est", "EST") := .(EST, NULL)]
这让我觉得处理问题的方式很奇怪。任何人都可以建议另一种方法吗?