【发布时间】:2018-01-12 21:22:59
【问题描述】:
我想获取一个很长的数据框并使其变宽。这是一个例子:
df <- data.frame(date = rep(seq(as.Date("1990/1/1"), as.Date("1999/1/1"), "years"),10), price = seq.int(1, 100), type = c(rep("str",10), rep("str2",10), rep("chr",10), rep("chr2",10), rep("num",10), rep("num2",10), rep("posix",10), rep("posix2",10), rep("date",10), rep("date2",10)))
我希望每一列都有不同的日期,但正如您所见,type 的每一列都有自己的一组日期,从 1990 年到 1999 年。我只希望每个唯一的 date 有一列,然后是一个每个type 的行。那么第 [i,j] 个单元格中的条目将是该类型在一年中的那一天的价格。
所以我可以想象它看起来像:
类型,1990-1-1, 1991-1-1, ..., 1999-1-1
数字, 1, 2, ... , 10
chr, 11, 12, ..., 20
...
日期, 91, 92, ..., 100
【问题讨论】: