【发布时间】:2020-10-03 08:32:55
【问题描述】:
我对 R 很陌生,但我仍然不太擅长它。 我正在使用如下所示的数据框:
ID ESG var Y2009 Y2010 Y2011
A ESG score 5.1 3.5 4.8
A Emissions 3.0 1.4 1.3
B ESG score 6.5 4.6 2.1
B Emissions 3.6 1.9 1.6
但我想重塑它,让它看起来像:
ID YEARS ESG score Emissions
A 2009 5.1 3.0
A 2010 3.5 1.4
A 2011 4.8 1.3
B 2009 6.5 3.6
B 2010 4.6 1.9
B 2011 2.1 1.6
我需要一个取三个值(2009、2010、2011)的年份变量,然后转到取相应数值的两个 ESG 变量(ESG score 和 Emission)。
我尝试使用函数 reshape() 和 melt() 但我找不到任何好方法。 有人可以帮帮我吗?
【问题讨论】:
-
你可以这样做
tidyr::pivot_longer(d, -c(ID,ESG var)) %>% tidyr::pivot_wider(names_from = "ESG var", values_from = "value")
标签: r dataframe data-structures