使用旧变量将数据框重塑为新的行名

Emi*_*one 2 r reshape

我需要以一种方式重塑我的数据,在列中我有两个不同年份的值,这样我就可以计算变化。主要思想是用户可以选择两个不同的年份并查看不同 KPI 的变化。

假设这是我的数据:

df <- data.frame(
  PERIOD = c(2020, 2021),
  map = c(1, 2),
  mac = c(1, 4)
)
Run Code Online (Sandbox Code Playgroud)

我希望新的数据框有两列(2020 年、2021 年),“map”“mac”作为名为“kpi”的新变量的值。

All*_*ron 5

您还可以通过转置和整理名称在基本 R 中执行此操作:

setNames(as.data.frame(t(df)[-1,]), df[[1]])
#>     2020 2021
#> map    1    2
#> mac    1    4
Run Code Online (Sandbox Code Playgroud)