[R-es] Colapsar una matriz con NA en una única fila
javier.ruben.marcuzzi en gmail.com
javier.ruben.marcuzzi en gmail.com
Mie Oct 12 00:59:13 CEST 2016
Estimado Oscar Benitez
Use la solución de Carlos Ortega, mi solución busca cuándo no tienen NA, pero si están en distinta fila a usted le sirve y yo lo descarto.
Javier Rubén Marcuzzi
De: javier.ruben.marcuzzi en gmail.com
Enviado: martes, 11 de octubre de 2016 19:29
Para: Oscar Benitez
CC: R-help-es
Asunto: RE: [R-es] Colapsar una matriz con NA en una única fila
Estimado Oscar Benitez
Tendría que probarlo, pero el código que yo le envié no está para copiar y pegar, lo que esta entre [] filtra una Var, no las tres, para las tres al mismo tiempo debe completar el código entre [ …]
Algo tipo:
lista <- lista[!is.na(lista$Var1) & !is.na(lista$Var2),]
Javier Rubén Marcuzzi
De: Oscar Benitez
Enviado: martes, 11 de octubre de 2016 15:53
Para: Javier Marcuzzi
CC: R-help-es
Asunto: Re: [R-es] Colapsar una matriz con NA en una única fila
Javier
Muchas gracias por su respuesta
Aunque no está funcionando, pues si ejecuto:
EncDTE1<- t.EncDTE1[ !is.na(t.EncDTE1$Var1),] obtengo Var1, Var2, Var3,...Varn con datos "texto", NA, NA....NA
Pero al ejecutar
EncDTE1<- t.EncDTE1[ !is.na(t.EncDTE1$Var2),] obtengo Var1, Var2, Var3,...Varn con datos NA,"texto", NA....NA
Estoy tratando de dar la vuelta con el loop otra vez, pero aún no lo consigo...
Muchas gracias
El 11 de octubre de 2016, 15:27, <javier.ruben.marcuzzi en gmail.com> escribió:
Estimado Oscar Benitez
Yo utilizo algo como lo siguiente:
Datos<- Datos[ !is.na(Datos$DatoX),] #Solo dejo filas en las que las tratamiento son diferentes de cero
Javier Rubén Marcuzzi
De: Oscar Benitez
Enviado: martes, 11 de octubre de 2016 15:22
Para: R-help-es
Asunto: [R-es] Colapsar una matriz con NA en una única fila
Hola
Consulto por un problema que no consigo resolver.
Tengo un dataframe con muchas columnas todas de texto. Cada columna tiene
solamente un valor válido y el resto son NAs. También cada fila tiene un
único valor válido. Quiero colapsar ese data frame en uno que tenga
solamente una fila y todas las columnas. Intenté con loops, while, apply y
otros parecidos pero no lo logro
El ejemplo del data frame sería así:
V1 V2 V3
a33 <NA> 10-04
<NA> <NA> <NA>
<NA> d52725 <NA>
<NA> <NA> <NA>
Y quiero lograr algo así
V1 V2 V3
a33 d52725 10-04
Mi script es así:
Nombre.1<-colnames(df0) #df0 es el dataframe que obtengo con NA
df<-data.frame(1) #inicio un nuevo data frame con una variable sin nombre y
valor 1
for (i in Nombre.1)
{merge(df, subset(paste("df0$",i,sep=''),!is.na(paste("df0$",i,sep=''))))}
#el loop
Cualquier ayuda será apreciada
--
Oscar Benitez
[[alternative HTML version deleted]]
_______________________________________________
R-help-es mailing list
R-help-es en r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es
--
Oscar Benitez
[[alternative HTML version deleted]]
Más información sobre la lista de distribución R-help-es