我有一个来自文本文件的数据集,它只有 2 列但数据中有多个分节符,我想将其放入单独的数组中,其中数组的名称是与“Ran:”相邻的第二列中的文本。下面是一个示例数据集:
ABCDEFG
Authored by test
Ran: Efg$
Test: num85
1 50
2 52
3 54
Ran: pg2
Test: num85
1 40
2 60
3 80
Ran: #2
Test: num85
1 14
2 15
3 16
我尝试使用 strsplit 函数,如下所示:
header = readLines("C:/My Documents/DVH Test.txt", n=17)
data = read.table("C:/My Documents/DVH Test.txt", skip=16,
col.names = c("bin", "value"))
data.split = strsplit(data, "R")
我不确定我是否使用了正确的方法。
任何建议,将不胜感激。
提前致谢。
好的,我已经尝试过了,但是我得到了一个空向量,并且元素不像你的那样排列:
data = scan("C:/My Documents/DV.txt", what="raw")
dat = readLines(textConnection(data))
dat = dat[!grepl("Ran",dat)]
dat.split = lapply(split(dat,cumsum(grepl("Test:",dat))),
function(x)
read.table(text=x,header=TRUE))