我有一个带有一堆填充列的文件(当然命名为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
任何指针?
答案 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