У меня большая база данных, и я не могу их здесь создать. У меня есть две базы данных данных следующим образом.
df1 <- read.table(text="A1 B1 C1 D1 E1
1234Z 721 224 223 987L
224 321 224 331 987L
321 321 224 441 141
321 440 456Y 331 141
321 1234Q 456Y 441 321
218 221 456Y 12A 321
218 440 19 223 321
161 1234Q 19 12A 123Q
1234Z 123Q 77 11A 123Q", header=TRUE)
df2 <- read.table(text=" BCG1 BCG2 BCG3 BCG4 BCG5
1 11 13 18 24
4 9 13 19 24
5 9 13 20 22
5 10 14 19 22
5 6 14 20 23
3 8 14 17 23
3 10 12 18 23
2 6 12 17 21
1 7 15 16 21", header=TRUE)
Df1 - это факторы, которые кодируются df2. Я использовал следующий код:
df3 <- do.call(cbind.fill, c(Map(function(x,y)
data.frame(col=x,col2=unique(y)),
lapply(df1,unique),split(df2, col(df2))))
names(df3)<-c(rbind(df1), paste0("Zo", seq_along((df1))))
Я хочу получить следующую таблицу
A1 BCG1 B1 BCG2 C1 BCG3 D1 BCG4 E1 BCG5
1234Z 1 721 11 224 13 223 18 987L 24
224 4 321 9 456Y 14 331 19 141 22
321 5 221 8 19 12 441 20 321 23
218 3 440 10 77 15 12A 17 123Q 21
161 2 1234Q 6 11A 16
123Q 7
Я открыт для других кодов. Спасибо за вашу помощь