【发布时间】:2021-10-11 11:19:10
【问题描述】:
我的数据类似于:
patientid <- c(100,101,101,101,102,102)
weight <- c(1,1,2,3,1,2)
height <- c(0,6,0,0,0,1)
bmi <- c(0,5,0,0,0,1)
我想对患者 ID 进行分组,以便数据框中每行只有 1 位患者。
然后将其他行作为附加列(通过在末尾添加一个数字来命名)。因此数据框将是 patientid、weight1、height1、bmi1、weight2、height2、bmi2 等。列数将对应于有多少重复的患者 id。
我假设 group_by 和 spread 是关键功能,但我无法弄清楚。在此示例中,患者 ID 为 101 的行将仅在 height1、bmi1 和 weight1 列中具有值,患者 101 将在 weight1、height1、bmi1、weight2、height2、bmi2、weight3、height3、bmi3 中具有值,而患者 102 将具有值在 weight1, height1, bmi1, weight2, height2, bmi2.
【问题讨论】:
标签: r dataframe reshape data-cleaning