2014-01-22 23 views
0

我有一个.txt文件是这样的:你如何转换txt文件到数据帧中的R

<begin> 
pwd 
cd ~ 
<end> 
<begin> 
ls 
vi 
<end> 
<begin> 
cat 
ls 
pwd 
<end> 

等 我需要建立从这个文本文件中的数据帧。数据帧之间的代码进入数据帧。

例如,上述数据应该在数据帧表示如下:

user1 pwd 
user1 cd~ 
user2 ls 
user2 vi 
user3 cat 
user3 ls 
user3 pwd 

会怎么中的R做呢?

回答

3

方式一:

导入您的数据:

dat <- readLines(textConnection("<begin> 
pwd 
cd ~ 
<end> 
<begin> 
ls 
vi 
<end> 
<begin> 
cat 
ls 
pwd 
<end>")) 

然后得到你的结果:

result <- data.frame(user=cumsum(dat=="<begin>"),dat) 
result[!result$dat %in% c("<begin>","<end>"),] 

# user dat 
#2  1 pwd 
#3  1 cd ~ 
#6  2 ls 
#7  2 vi 
#10 3 cat 
#11 3 ls 
#12 3 pwd