【发布时间】:2015-07-27 04:46:42
【问题描述】:
您好,我正在尝试将一个大型数据文件读入 R。它是一个制表符分隔的文件,但是前两列填充了由“|”分隔的多条数据。该文件如下所示:
A|1 B|2 0.5 0.4
C|3 D|4 0.9 1
我只关心第一列和第二列以及第三列和第四列中的第一个值。最后,我想为每一行得到一个向量,如下所示:
A B 0.5 0.4
我正在使用连接读取文件:
con <- file("inputfile.txt", open = "r")
lines <- readLines(con)
这给了我:
lines[1]
[1] "A|1\tB|2/t0.5\t0.4"
然后我使用 strsplit 来拆分制表符分隔的文件:
linessplit <- strsplit(lines, split="\t")
这给了我:
linessplit[1]
[1] "A|1" "B|2"
[3] "0.5" "0.4"
当我尝试以下将“A|1”拆分为“A”“1”时:
line1 <- linessplit[1]
l1 <- strsplit(line1[1], split = "|")
我明白了:
"Error in strsplit(line1[1], split = "|") : non-character argument"
有没有人可以解决这个问题? 谢谢!
【问题讨论】: