将特定列设为 r (reshape/transpose) 中的 header

Make specific column the header in r (reshape/transpose)

我正在尝试做一些非常简单的事情,但在网上找不到任何东西(而且我发现很难知道要做什么 google)。

我的数据集示例如下。

TimeDiff      Speed       Direction
   3            0              0
   2            0             10
  54            0             15 
  36            0             20

我想将数据框重塑为如下所示。

              0      10      15     20
TimeDiff      3      2       54     36
Speed         0      0       0      0

所以我基本上想让方向列成为我的 header 和 timediff 并加快我的行。

感谢您提供的任何帮助。

这个怎么样?

setNames(data.frame(t(df)[-ncol(df), ]), as.character(df[, ncol(df)]))
#         0 10 15 20
#TimeDiff 3  2 54 36
#Speed    0  0  0  0

这会生成 data.frameint 列。

str(setNames(data.frame(t(df)[-ncol(df), ]), as.character(df[, ncol(df)])))
#'data.frame':  2 obs. of  4 variables:
# $ 0 : int  3 0
# $ 10: int  2 0
# $ 15: int  54 0
# $ 20: int  36 0