【发布时间】:2020-05-20 13:20:44
【问题描述】:
我正在将 longitduinal 数据从宽格式转换为长格式。这一点让我了解“在后台”发生的事情以及了解它是否真的可能。
df1 是我之前完全加入的 4 波数据的组合。我有 4 个带有标识符 pidp 的 wave 和三个固定变量,我已将它们插入到第一个 wave 中,然后在 wave 1 中有五个时变变量。
在浪 2、浪 3 和浪 4 中,有一个变量叫 jwbs1_2,它只出现在浪 2、浪 3 和浪 4 中。
因此,第 1 波中有五个时变变量,但在第 2、3 和 4 波中有六个时变变量,如帖子底部所示。
I got the error message
Error in reshapeLong(data, idvar = idvar, timevar = timevar, varying = varying, :
'varying' arguments must be the same length
我想知道是否可以在不同的波中使用不同数量的时变变量并以长格式使用它们?有办法解决吗?
出于说明目的,我插入了下面的变量和我使用的代码
$ pidp
$ sex
$ edtype
$ jbsat_1
$ sclfsato_1
$ jbsat_1
$ sf12mcs_1
$ scghq1_1
$ jbsat_2
$ sclfsato_2
$ jbsat_2
$ sf12mcs_2
$ scghq1_2
$jwbs1_2
df2 <- reshape(
data = df1,
varying = 4:length(df1),
timevar = "wave",
sep = "_",
idvar = "pidp",
direction = "long"
)
【问题讨论】:
标签: r reshape long-integer data-cleaning longitudinal