如何将数据 X 转换为 Y,如
X = data.frame(
ID = c(1,1,1,2,2),
NAME = c("MIKE","MIKE","MIKE","LUCY","LUCY"),
SEX = c("MALE","MALE","MALE","FEMALE","FEMALE"),
TEST = c(1,2,3,1,2),
SCORE = c(70,80,90,65,75)
)
Y = data.frame(
ID = c(1,2),
NAME = c("MIKE","LUCY"),
SEX = c("MALE","FEMALE"),
TEST_1 =c(70,65),
TEST_2 =c(80,75),
TEST_3 =c(90,NA)
)
中的dcast
函数reshape2
似乎可以工作,但它不能在数据中包含其他列,如上面示例中的 ID、NAME 和 SEX。
假设一个 ID 列的所有其他列都是一致的,比如 Mike 只能是 ID 为 1 的男性,我们该怎么做呢?