Есть несколько способов сделать это.Один из подходов - acast
, который вы упомянули, но вы также можете использовать spread
из tidyr
library(tidyr)
var1 <- c("A", "B", "C", "D")
var2 <- c("E", "E", "F", "F")
corr <- c(0.2, 0.3, 0.4, 0.5)
df <- data.frame(var1, var2, corr)
df
var1 var2 corr
1 A E 0.2
2 B E 0.3
3 C F 0.4
4 D F 0.5
df <- spread(df, var2, corr)
df
var1 E F
1 A 0.2 NA
2 B 0.3 NA
3 C NA 0.4
4 D NA 0.5