2014-01-22 24 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