У меня есть гораздо более крупная версия следующего набора данных.
mydata <- data.frame("C1" = c("EB", "L", 1, 2, 3) ,
"C2" = c("WB", "T", 4, 5, 6),
"C3" = c("NB", "R", 7, 8, 9),
"C4" = c("SB", "Total", 12, 15, 18),
"C5" = c("", "L",1, 2, 3),
"C6" = c("", "TR", 4, 5, 6),
"C7" = c("", "Total", 5, 7, 9),
"C8" = c("", "L",1, 2, 3),
"C9" = c("", "R", 4, 5, 6),
"C10" = c("", "Total", 5, 7, 9),
"C11" = c("", "L",1, 2, 3),
"C12" = c("", "TR", 4, 5, 6),
"C13" = c("", "Total", 5, 7, 9), stringsAsFactors = FALSE)
> mydata
C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C12 C13
1 EB WB NB SB
2 L T R Total L TR Total L R Total L TR Total
3 1 4 7 12 1 4 5 1 4 5 1 4 5
4 2 5 8 15 2 5 7 2 5 7 2 5 7
5 3 6 9 18 3 6 9 3 6 9 3 6 9
Мне нужна комбинация первых двух строк, чтобы результирующий набор данных выглядел примерно так
> myresult
C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C12 C13
1 EBL EBT EBR EBTotal WBL WBTR WBTotal NBL NBR NBTotal SBL SBTR SBTotal
2 1 4 7 12 1 4 5 1 4 5 1 4 5
3 2 5 8 15 2 5 7 2 5 7 2 5 7
4 3 6 9 18 3 6 9 3 6 9 3 6 9
По сути, я хочу сохранить оставшуюся часть фрейма данных как есть.
Обратите внимание: это ситуация из очень большого набора данных с 1000 записей и 18 столбцами.Любая помощь будет высоко ценится.Заранее спасибо!
Обновление: я пробовал
mydata[1,]= paste0(rep(mydata[1,], each = length(mydata[2,])), mydata[2,])
, но это просто повторяет одно значение из первого ряда
C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C12 C13
1 EBL EBT EBR EBTotal EBL EBTR EBTotal EBL EBR EBTotal EBL EBTR EBTotal
2 L T R Total L TR Total L R Total L TR Total
3 1 4 7 12 1 4 5 1 4 5 1 4 5
4 2 5 8 15 2 5 7 2 5 7 2 5 7
5 3 6 9 18 3 6 9 3 6 9 3 6 9