关于如何转换或重塑我的数据框的任何想法:
value L2
1 2008-09-01T07:00:00 timestamp
2 621.31 ht
3 0 X3
4 2008-09-02T07:00:00 timestamp
5 621.24 ht
6 0 X3
7 2008-09-03T07:00:00 timestamp
8 621.25 ht
9 0 X3
对此:
timestamp ht X3
1 2008-09-01T07:00:00 621.31 0
2 2008-09-02T07:00:00 621.24 0
3 2008-09-03T07:00:00 621.25 0
我正在尝试将第二列更改为列名并保持timestamp
和ht
记录配对。
*标题需要一些工作,如果有人有更好的想法,我会乐意尝试改变它。
答案 0 :(得分:2)
基础R中的简单unstack
可以解决这个问题:
unstack(df)
ht timestamp X3
1 621.31 2008-09-01T07:00:00 0
2 621.24 2008-09-02T07:00:00 0
3 621.25 2008-09-03T07:00:00 0
这个函数非常适合转换两列data.frame,其中一列是值,另一列将变量命名为适当形状的宽data.frame。
数据强>
df <- read.table(header=TRUE, text=" value L2
1 2008-09-01T07:00:00 timestamp
2 621.31 ht
3 0 X3
4 2008-09-02T07:00:00 timestamp
5 621.24 ht
6 0 X3
7 2008-09-03T07:00:00 timestamp
8 621.25 ht
9 0 X3")