0

I have a data frame like this

df <- data.frame(matrix(nrow = 12, ncol = 3))
colnames(df) <- c("Subject", "Session", "perc1")
df$Subject <- c(1,1,1,2,2,2,3,3,3,4,4,4)
df$Session <- c(1,2,3,1,2,3,1,2,3,1,2,3)
df$perc1 <- c(1,5,3,7,6,2,"NA",8,10,4,9,1)

How can I make it like this?

df <- data.frame(matrix(nrow = 4, ncol = 4))
colnames(df) <- c("Subject","S1","S2","S3")
df$Subject <- c(1,2,3,4)
df$S1 <- c(1,7,"NA",4)
df$S2 <- c(5,6,8,9)
df$S3 <- c(3,2,10,1)
jc2525
  • 141
  • 10
  • 1
    With `tidyr::pivot_wider`: `pivot_wider(df, names_from = Session, values_from = perc1, names_prefix = "S")` – benson23 Apr 11 '23 at 15:55

0 Answers0