Foro de debate

Combinar Columnas

 
Imagen de Armando López C
Combinar Columnas
de Armando López C - miércoles, 11 de octubre de 2017, 21:50
 

Buenas tardes amigos , la consulta es la siguiente; tengo una base con tres columnas de estatus de este tipo

ESTATUS                              ESTATUS.y                ESTATUS.x

ENCONTRADO1                      NA                                 NA

ENCONTRADO1                      NA                                 NA

ENCONTRADO1                      NA                                 NA

NA                                        ENCONTRADO2               NA

NA                                        ENCONTRADO2               NA

NA                                        ENCONTRADO2               NA

NA                                            NA                                  ENCONTRADO3


lo que quiero hacer es que aprescan los distintos estatus en una sola columna. Agradezco su apoyo de ante mano saludos.




Imagen de Manuel Muñoz Márquez
Re: Combinar Columnas
de Manuel Muñoz Márquez - viernes, 13 de octubre de 2017, 08:13
 

Buenas:

Primero definimos una función que se queda con los valores no NA y luego la aplicamos por filas.

Un saludo.

f <- function(x) {
 i <- is.na(x)
 x[!i]
 }
apply(d, 1, f)
Imagen de Jose Luis Cebrián
Re: Combinar Columnas
de Jose Luis Cebrián - domingo, 15 de octubre de 2017, 19:54
 

Hola
¿Algo así?
library (tidyr)
head (Dataset)
ESTATUS ESTATUS.y ESTATUS.x
1 ENCONTRADO1 <NA> <NA>
2 ENCONTRADO1 <NA> <NA>
3 ENCONTRADO1 <NA> <NA>
4 <NA> ENCONTRADO2 <NA>
5 <NA> ENCONTRADO2 <NA>
6 <NA> ENCONTRADO2 <NA>

Dataset2<- gather (Dataset, "ESTATUS","TIPO" ,1:3, na.rm=TRUE)
head (Dataset2)
ESTATUS TIPO
1 ESTATUS ENCONTRADO1
2 ESTATUS ENCONTRADO1
3 ESTATUS ENCONTRADO1
4 ESTATUS.y ENCONTRADO2
5 ESTATUS.y ENCONTRADO2
6 ESTATUS.y ENCONTRADO2
7 ESTATUS.x ENCONTRADO3