Saltar al contenido principal
Documentos
Gestión de datos en RGráficos en RR DocumentaciónInterfaz REstadística en RIntroducción de datos en R

Remodelación de datos en R

R proporciona diversos métodos para remodelar los datos antes del análisis.

Transponer

Utiliza la función t() para transponer una matriz o un marco de datos. En este último caso, los rownames se convierten en nombres de variables (columnas).

# example using built-in dataset
mtcars
t(mtcars)

El Paquete Remodelar

Hadley Wickham ha creado un completo paquete llamado reshape para masajear datos. Tanto la introducción como el artículo están disponibles. ¡Incluso hay un vídeo!

Básicamente, "fundes" los datos para que cada fila sea una combinación id-variable única. A continuación, "moldea" los datos fundidos en la forma que desees. He aquí un ejemplo muy sencillo.

mydata

       
id tiempo x1 x2
1 1 5 6
1 2 3 5
2 1 6 1
2 2 2 4
# example of melt function
library(reshape)
mdata <- melt(mydata, id=c("id","time"))

newdata

       
id tiempo variable value
1 1 x1 5
1 2 x1 3
2 1 x1 6
2 2 x1 2
1 1 x2 6
1 2 x2 5
2 1 x2 1
2 2 x2 4
# cast the melted data
# cast(data, formula, function)
subjmeans <- cast(mdata, id~variable, mean)
timemeans <- cast(mdata, time~variable, mean)

subjmeans

     
id x1 x2
1 4 5.5
2 4 2.5

timemeans

     
tiempo x1 x2
1 5.5 3.5
2 2.5 4.5

Hay mucho más que puedes hacer con las funciones fundir( ) y fundir( ). Consulta la documentación para más detalles.

Ir más lejos

Para practicar el masaje de datos, prueba este curso de limpieza de datos en R.

Aprende lo esencial de R

Domina los fundamentos del análisis de datos en R, incluyendo vectores, listas y marcos de datos, y practica R con conjuntos de datos reales.
Empieza a aprender R gratis