使用重塑将数据从宽数据重组为多列长数据时出错
Error when using reshape to restructure data from wide to long data with multiple column
我正在尝试使用 reshape
从宽格式到长格式重组我的数据,但我一直收到错误消息。下面我写了我已经尝试过的代码和我得到的错误消息。
当前数据结构
patientid Adh_catv1 Adh_catv2 Adh_catv3 Adh_threeitemsv1 Adh_threeitemsv2 Adh_threeitemsv3
70FD optimal optimal optimal 86 90 100
70LJ suboptimal suboptimal optimal 40 50 70
70ML optimal suboptimal suboptimal 89 55 50
所需的结构
patientid Visits Adherence Adherence_threeitem
70FD visit1 optimal 86
70FD visit2 optimal 90
70FD visit3 optimal 100
70LJ visit1 suboptimal 40
70LJ visit2 suboptimal 50
70LJ visit3 optimal 70
70ML visit1 optimal 89
70ML visit2 suboptimal 55
70ML visit3 suboptimal 50
这是我目前尝试过的方法
reshape(df, direction = 'long',
varying = c ('adh_catv1:Adh_threeitemsv3'),
timevar = 'Visits',
times = c ("visit1","visit2","visit3"),
v.names = c ('adherence','adherence_threeitem),
idvar = 'patientid')
Error in reshape(df, direction = "long", varying = c("adh_catv1:Adh_threeitemsv3"), :
length of 'varying' must be the product of length of 'v.names' and length of 'times'
请告知我在上面的代码中做错了什么,或者建议使用其他函数的替代更简单的选项。
这里最基本的代码是:
reshape(df,-1, dir="long", sep="")
patientid time Adh_catv Adh_threeitemsv id
1.1 70FD 1 optimal 86 1
2.1 70LJ 1 suboptimal 40 2
3.1 70ML 1 optimal 89 3
1.2 70FD 2 optimal 90 1
2.2 70LJ 2 suboptimal 50 2
3.2 70ML 2 suboptimal 55 3
1.3 70FD 3 optimal 100 1
2.3 70LJ 3 optimal 70 2
3.3 70ML 3 suboptimal 50 3
您可以根据需要添加其他变量:
我正在尝试使用 reshape
从宽格式到长格式重组我的数据,但我一直收到错误消息。下面我写了我已经尝试过的代码和我得到的错误消息。
当前数据结构
patientid Adh_catv1 Adh_catv2 Adh_catv3 Adh_threeitemsv1 Adh_threeitemsv2 Adh_threeitemsv3
70FD optimal optimal optimal 86 90 100
70LJ suboptimal suboptimal optimal 40 50 70
70ML optimal suboptimal suboptimal 89 55 50
所需的结构
patientid Visits Adherence Adherence_threeitem
70FD visit1 optimal 86
70FD visit2 optimal 90
70FD visit3 optimal 100
70LJ visit1 suboptimal 40
70LJ visit2 suboptimal 50
70LJ visit3 optimal 70
70ML visit1 optimal 89
70ML visit2 suboptimal 55
70ML visit3 suboptimal 50
这是我目前尝试过的方法
reshape(df, direction = 'long',
varying = c ('adh_catv1:Adh_threeitemsv3'),
timevar = 'Visits',
times = c ("visit1","visit2","visit3"),
v.names = c ('adherence','adherence_threeitem),
idvar = 'patientid')
Error in reshape(df, direction = "long", varying = c("adh_catv1:Adh_threeitemsv3"), :
length of 'varying' must be the product of length of 'v.names' and length of 'times'
请告知我在上面的代码中做错了什么,或者建议使用其他函数的替代更简单的选项。
这里最基本的代码是:
reshape(df,-1, dir="long", sep="")
patientid time Adh_catv Adh_threeitemsv id
1.1 70FD 1 optimal 86 1
2.1 70LJ 1 suboptimal 40 2
3.1 70ML 1 optimal 89 3
1.2 70FD 2 optimal 90 1
2.2 70LJ 2 suboptimal 50 2
3.2 70ML 2 suboptimal 55 3
1.3 70FD 3 optimal 100 1
2.3 70LJ 3 optimal 70 2
3.3 70ML 3 suboptimal 50 3
您可以根据需要添加其他变量: