通过多个重复的测量变量将形状重塑为长形

时间:2019-12-19 16:52:49

标签: r reshape tidyr

我需要将重复测量的数据从宽格式重整为长格式。数据具有一个受试者ID和四个变量(W,X,Y,Z),每个变量在5个时间点(t1,t2,t3,t4,t5)测量。

ID t1.W t1.X t1.Y t1.Z t2.W t2.X t2.Y t2.Z t3.W t3.X ... and so on
A    2    4    5    3    4    5    4    4    3    2
B    3    5    3    4    5    2    3    5    1    4
C    3    4    3    5    5    4    3    4    3    2
D    4    2    4    4    5    2    3    3    4    5
.
.

我希望数据看起来如下:

ID Time   W    X    Y    Z
A   t1    2    4    5    3
B   t1    3    5    3    4
C   t1    3    4    3    5
D   t1    4    2    4    4
A   t2    4    5    4    4
B   t2    5    2    3    5
C   ..

我首先尝试使用tidyr的new pivot_long()函数重塑数据。另外,我已经尝试使用reshape()函数,因为我已经找到了一个类似的问题,并将代码修改为我的数据集:

reshape(data_MA.w, idvar = "ID", direction = "long", varying = list(c(3,7,11,15,19),c(4,8,12,16,20), c(5,9,13,17,21),c(6,10,14,18,21)), v.names = c("W", "X", "Y", "Z"))

我尝试了两种不同的形式,这导致了以下错误: .rowNamesDF<-(x,值=值)中的错误:无效的“行名”长度。 另外:警告:不建议在小标题上设置行名。

有人可以帮我吗?

0 个答案:

没有答案