Hola José
Puedes ver cuál de las siguientes formas te gusta más. Dado que solo has dicho
que quieres eliminar columnas que estén totalmente vacías entones esto
fucionará, de lo contrario no funcionará muy bien.
# Creando una matriz para recrear la situación
set.seed(007) #
A <- matrix(rnorm(8, 60, 10), 4, 2)
A <- cbind(A, rep(NA, 4), rnorm(4, 100, 30), rep(NA, 4))
# Ahora la matriz A contiene dos columnas con NA
# una forma muy fácil de eliminar esa columna es trasponiendo
# la matriz y luego apliando na.omit, y luego transponiendola
# otra vez para volverla a su forma original:
t(na.omit(t(A)))
# Pero esto da como resultado algo no muy agradable,
# se puede arreglar con as.data.frame y ahora está mejor
as.data.frame(t(na.omit(t(A))))
## Otra alternativa es:
A. <- as.numeric(A)[-which(is.na(A))]
matrix(A., nrow=nrow(A))
# podrias probar, se obtiene lo mismo
t(na.omit(as.data.frame(t(A))))
# otra alternativa
A[,!is.na(A)[1,]]
A mi me gusta más última alternativa
Espero que sea de utilidad.
> From: r-help-es-request@r-project.org
> Subject: Resumen de R-help-es, Vol 38, Envío 27
> To: r-help-es@r-project.org
> Date: Tue, 17 Apr 2012 12:00:05 +0200
>
> Envíe los mensajes para la lista R-help-es a
> r-help-es@r-project.org
>
> Para subscribirse o anular su subscripción a través de la WEB
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
> O por correo electrónico, enviando un mensaje con el texto "help"
en
> el asunto (subject) o en el cuerpo a:
> r-help-es-request@r-project.org
>
> Puede contactar con el responsable de la lista escribiendo a:
> r-help-es-owner@r-project.org
>
> Si responde a algún contenido de este mensaje, por favor, edite la
> linea del asunto (subject) para que el texto sea mas especifico que:
> "Re: Contents of R-help-es digest...". Además, por favor, incluya
en
> la respuesta sólo aquellas partes del mensaje a las que está
> respondiendo.
>
>
> Asuntos del día:
>
> 1. Eliminar columnas vacías (Jose)
> 2. XXXIII Congreso Nacional de Estadística e Investigación
> Operativa (Emilio López)
> 3. Re: Eliminar columnas vacías (Carlos Ortega)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Tue, 17 Apr 2012 10:47:38 +0200
> From: Jose <jmprietob@gmail.com>
> To: Lista Usuarios R en español <r-help-es@r-project.org>
> Subject: [R-es] Eliminar columnas vacías
> Message-ID:
> <CAErPEPvD8aPcnpnXU+G2jjOZSjCtsZE_C9ALh+OcuG1Nf-RAXg@mail.gmail.com>
> Content-Type: text/plain
>
> Buenos dÃas,
>
> He llegado a R sin querer y me encanta. Eso si me siento como un elefante
> en una cacharrerÃa o como si estuviera empezando la casa por el tejado.
>
> Estoy trabajando con una serie de datos que traigo de una base de datos y
> consulto sobre ellos.
> El resultado contiene columnas vacÃas de esta forma (no siempre el mismo
nº
> de columnas vacÃas):
>
> Seguimiento fecha1 fecha2 fecha3 fecha4....
> tipo1-12 NA NA 0 15
> tipo1-15 NA NA 0 21
>
> Existe alguna función que elimine de mi data frame las columnas sin datos.
>
> Muchas gracias y un saludo
> --
> José Manuel Prieto
>
> [[alternative HTML version deleted]]
>
>
>
> ------------------------------
>
> Message: 2
> Date: Tue, 17 Apr 2012 10:53:16 +0200
> From: Emilio López <emilio.lopez@urjc.es>
> To: r-help-es <r-help-es@r-project.org>
> Subject: [R-es] XXXIII Congreso Nacional de Estadística e
> Investigación Operativa
> Message-ID:
> <CAAr-_QV7soLiJGF8ROv2MEd_ChFsGviCO1RvD8en89VRYfSPPQ@mail.gmail.com>
> Content-Type: text/plain; charset=ISO-8859-1
>
> Hola lista!
>
> Hoy comienza el XXXIII Congreso Nacional de Estadística e
> Investigación Operativa en Madrid. Me consta que R estará presente en
> muchos de los trabajos presentados, podéis consultar el programa en la
> web del congreso: http://www.seio2012.com/
>
> Siempre es una buena ocasión para conocer personalmente a gente con la
> que quizás todavía no hemos coincidido, yo llegaré mañana por la
> tarde, presento el viernes y soy miembro del comité organizador. Si
> alguien de la lista asiste al congreso y necesita cualquier cosa estoy
> a vuestra disposición.
>
> Un cordial saludo,
> --
> _____________________________________
>
> Emilio L. Cano
> +34 665 676 225
> Department of Statistics and Operations Research
> Universidad Rey Juan Carlos
>
>
>
> ------------------------------
>
> Message: 3
> Date: Tue, 17 Apr 2012 11:21:53 +0200
> From: Carlos Ortega <cof@qualityexcellence.es>
> To: Jose <jmprietob@gmail.com>
> Cc: Lista Usuarios R en español <r-help-es@r-project.org>
> Subject: Re: [R-es] Eliminar columnas vacías
> Message-ID:
> <CAOKbq8hPdeYtoQLmYAhduQsVkV=4XJnWgYJyOAz_sQz1pM4fww@mail.gmail.com>
> Content-Type: text/plain
>
> Hola,
>
> Aquí tienes varias soluciones:
>
>
http://stackoverflow.com/questions/7330915/removing-columns-with-missing-values
>
> Saludos,
> Carlos Ortega
> www.qualityexcellence.es
>
> El 17 de abril de 2012 10:47, Jose <jmprietob@gmail.com> escribió:
>
> > Buenos días,
> >
> > He llegado a R sin querer y me encanta. Eso si me siento como un
elefante
> > en una cacharrería o como si estuviera empezando la casa por el
tejado.
> >
> > Estoy trabajando con una serie de datos que traigo de una base de
datos y
> > consulto sobre ellos.
> > El resultado contiene columnas vacías de esta forma (no siempre el
mismo nº
> > de columnas vacías):
> >
> > Seguimiento fecha1 fecha2 fecha3 fecha4....
> > tipo1-12 NA NA 0 15
> > tipo1-15 NA NA 0 21
> >
> > Existe alguna función que elimine de mi data frame las columnas sin
datos.
> >
> > Muchas gracias y un saludo
> > --
> > José Manuel Prieto
> >
> > [[alternative HTML version deleted]]
> >
> >
> > _______________________________________________
> > R-help-es mailing list
> > R-help-es@r-project.org
> > https://stat.ethz.ch/mailman/listinfo/r-help-es
> >
> >
>
>
> --
> Saludos,
> Carlos Ortega
> www.qualityexcellence.es
>
> [[alternative HTML version deleted]]
>
>
>
> ------------------------------
>
> _______________________________________________
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
>
> Fin de Resumen de R-help-es, Vol 38, Envío 27
> *********************************************
[[alternative HTML version deleted]]