问题描述
假设我们有一个包含六个变量和 id 变量的数据集,如下所示:
id v2019 v2020 v2021 u2019 u2020 u2021
在这种情况下,如果我们使用 Stata,我们可以使用如下所示的“reshape”命令非常轻松地制作这个长表格。
重塑 long v u,i(id) j(year) => id v u
但是,当我使用 tidyr 包中的 gather 函数时,该函数每次只生成三列。
data %>% gather(key = "key,value = "value")
=> id 键值
即gather函数收集“每个”columb,而没有单独的不同变量,例如u和v。
所以我的问题是如何使用r中的gather来模拟stata中reshape的功能。
感谢您花时间阅读这个问题。
解决方法
能否先使用 more conventional methods 对数据进行整形,然后再使用 tidyr 包?
代码(和数据)的最小示例将有助于了解哪里出错了。