Стопки строк друг под другом - PullRequest
0 голосов
/ 17 января 2019

Мой набор данных выглядит так

Col1 Col2 Col3
 AA   BB   NA
 DD   EE   NA
 FF   NA   GG

Я бы хотел сложить строки друг под другом, чтобы конечный продукт выглядел следующим образом

Col1
AA
BB
DD
EE
FF
GG

Мне действительно трудно найти легкий способ сделать это. Любая помощь будет отличной!

1 Ответ

0 голосов
/ 17 января 2019

Мы можем сделать

data.frame(col1 = na.omit(c(t(dat))), stringsAsFactors = FALSE)
#  col1
#1   AA
#2   BB
#3   DD
#4   EE
#5   FF
#6   GG

Сначала мы транспонируем ваши данные, используя t(), который возвращает матрицу, затем мы вызываем c(), чтобы получить вектор, удаляем NA s с помощью na.omit и, наконец, создаем желаемый вывод, используя data.frame().

данные

dat <- structure(list(Col1 = c("AA", "DD", "FF"), Col2 = c("BB", "EE", 
NA), Col3 = c(NA, NA, "GG")), .Names = c("Col1", "Col2", "Col3"
), class = "data.frame", row.names = c(NA, -3L))
...