Połącz kolumnę, aby usunąć NA
Mam kilka kolumn w R i dla każdego wiersza zawsze będzie wartość w jednym z nich, reszta będzie NA. Chcę połączyć je w jedną kolumnę z wartością inną niż NA. Czy ktoś wie o łatwym sposobie robienia tego. Na przykład mógłbym mieć co następuje:
data <- data.frame('a' = c('A','B','C','D','E'),
'x' = c(1,2,NA,NA,NA),
'y' = c(NA,NA,3,NA,NA),
'z' = c(NA,NA,NA,4,5))
Tak bym miał
'a' 'x' 'y' 'z'
A 1 NA NA
B 2 NA NA
C NA 3 NA
D NA NA 4
E NA NA 5
I chciałbym się dostać
'a' 'mycol'
A 1
B 2
C 3
D 4
E 5
Nazwy kolumn zawierających NA zmieniają się w zależności od kodu wcześniejszego w zapytaniu, więc nie będę mógł jawnie wywołać nazw kolumn, ale mam nazwy kolumn kolumn, które zawierają NA przechowywane jako wektor, np. w tym przykładziecols <- c('x','y','z')
, więc można nazwać kolumny używającdata[, cols]
.
Każda pomoc byłaby doceniana.
Dzięki