如何将特定行读入R?

时间:2013-10-04 03:41:30

标签: r

我想读取一个由txt文件中的索引指定为R的特定行,例如

index = c(2, 5, 9, 99, 100)

意味着第2,第5等行成为R.我该如何处理?我要用

scan (file, skip = index[i]-1, nlines = 1)

带有for循环?

2 个答案:

答案 0 :(得分:2)

使用lapply

lns <- lapply(index, function(i) <your scan line>) 

do.call(rbind, lns)

# or
data.table::rbindlist(lns)

答案 1 :(得分:1)

lapply 在我的情况下不起作用(R 版本 4.1),总是返回同一行(第一行)。

建议的循环有效。这是一个工作示例。

lines<-c(3,5,900,1000)
items<-c()
for(i in 1:length(lines)){
    item<-scan(file,skip=lines[i]-1,nlines=1)
    items<-c(items,item)
}