陷入恐惧:错过重复名称(data.table R)

时间:2015-03-05 19:57:58

标签: r data.table

我有一个带有一堆填充列的文件(当然命名为filler),我试图用fread阅读。

我正在使用drop参数,但它只会丢弃第一个(可能是左右,但这是无关紧要的)它遇到的实例;我希望它能摆脱所有这些。

快速举例:

.csv标题:

id,first_name,last_name,filler,birth_year,filler,position,filler,wage

names(dt)使用drop中的fread

id,first_name,last_name,birth_year,filler,position,filler,wage

此外,如果我只是尝试:

DT <- fread("file.csv", drop = rep("filler", 5L))

我收到错误:

  

fread(paste0(substr(tt, 3, 4), "staff.csv"), drop = rep("filler",中的错误:         在drop

中检测到重复项

任何指针?

1 个答案:

答案 0 :(得分:3)

您可以使用scan()阅读文件的第一行,然后将该数据用作drop

中的fread()索引
## example text for fread()
x <- "id,first_name,last_name,filler,birth_year,filler,position,filler,wage
1,2,3,4,5,6,7,8,9"
## read the first line and find the filler
f <- scan(text = x, what = "", sep = ",", nlines = 1) == "filler"
## pass to fread()
fread(x, drop = which(f))
#    id first_name last_name birth_year position wage
# 1:  1          2         3          5        7    9