R将文本文件导入为数据帧列表

时间:2017-01-04 12:51:51

标签: r text import

我有一个很长的txt文件,如下所示:

RANGE
P1 H1
P3 H4
P10 H72
P14 H76
;
RANGE
P1 H1
P10 H8
P11 H8
;
...

我想在R中读取它,创建一个数据帧列表,其中RANGE和;划定每个内容。因此,每个数据帧应该有两列(P' s和H' s)和不同的行数。在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

我们可以使用read.table使用readLinessplit根据' RANGE'

的位置阅读元素后执行此操作
lst <- lapply(split(lines, cumsum(lines=="RANGE")), 
    function(x) read.table(text=x[-c(1, length(x))], header=FALSE, stringsAsFactors=FALSE))
lst
#$`1`
#   V1  V2
#1  P1  H1
#2  P3  H4
#3 P10 H72
#4 P14 H76

#$`2`
#   V1 V2
#1  P1 H1
#2 P10 H8
#3 P11 H8

数据

lines <- readLines("yourfile.txt")