Converting long to wide format

后端 未结 3 1363
北海茫月
北海茫月 2021-01-24 02:22
id <- c(1:8,1:8)
age1 <- c(7.5,6.7,8.6,9.5,8.7,6.3,9,5)
age2 <- age1 + round(runif(1,1,3),1)
age <- c(age1, age2)

tanner <-  sample(1:2, 16,replace=T)

d         


        
3条回答
  •  生来不讨喜
    2021-01-24 02:58

    aggregate then reshape (using a copied and pasted version of your df rather than your code, that doesn't match):

    reshape(
      aggregate(age ~ ., data=df, FUN=min),
      idvar="id", timevar="tanner", direction="wide"
    )
    
    #   id age.1 age.2
    #1   1  10.0   7.5
    #2   2   6.7    NA
    #3   3  11.1   8.6
    #4   5   8.7  11.2
    #5   6   6.3   8.8
    #6   7   9.0    NA
    #7   8   5.0    NA
    #10  4    NA   9.5
    

提交回复
热议问题