【发布时间】:2013-11-11 22:25:14
【问题描述】:
我有一个文件包含这样的内容:
name: erik
age: 7
score: 10
name: stan
age:8
score: 11
name: kyle
age: 9
score: 20
...
如您所见,文件中的每条记录实际上包含 3 行。我想知道如何读取文件并转换为数据数据框,如下所示:
name age score
erik 7 10
stan 8 11
kyle 9 20
...
到目前为止我做了什么(感谢 tcash21):
> data <- read.table(file.choose(), header=FALSE, sep=":", col.names=c("variable", "value"))
> data
variable value
1 name erik
2 age 7
3 score 10
4 name stan
5 age 8
6 score 11
7 name kyle
8 age 9
9 score 20
我在想如何通过 : 将列分成两列,然后在 reshape 包中使用类似 cast 的东西来做我想做的事?
或者我怎样才能得到只有索引号1,4,7,...的行,它有一个恒定的步长
谢谢!
【问题讨论】:
-
首先,您应该使用
read.table和sep=":"读取文件,这样您就可以将每个变量放在2 个单独的列中。 -
使用
?strsplit,拆分然后融化。