我会调用from.readLines <- readLines(filename),然后只选择不包含目标字符串的行:data <- read.csv(text = from.readLines[-grep('target', from.readLines)], header = F)。
较快的方法(如果您的文件很大)是首先在命令行上运行grep -v 'target' original.csv > new.csv,然后在R 中运行read.csv(new.csv, ...)。
不管怎样,
> #Without header
> from.readLines <- c('afaf,afasf,target', 'afaf,target,afasf', 'dagdg,asgst,sagga', 'dagdg,dg,sfafgsgg')
> data <- read.csv(text = from.readLines[-grep('target', from.readLines)], header = F)
> print(data)
V1 V2 V3
1 dagdg asgst sagga
2 dagdg dg sfafgsgg
>
> #With header
> from.readLines <- c('var1,var2,var3', 'afaf,afasf,target', 'afaf,target,afasf', 'dagdg,asgst,sagga', 'dagdg,dg,sfafgsgg')
> data <- read.csv(text = from.readLines[-(grep('target', from.readLines[-1]) + 1)])
> print(data)
var1 var2 var3
1 dagdg asgst sagga
2 dagdg dg sfafgsgg