Saltar al contenido principal

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

    
idtiempox1x2
1156
1235
2161
2224
# example of melt function
library(reshape)
mdata <- melt(mydata, id=c("id","time"))

newdata

    
idtiempovariablevalue
11x15
12x13
21x16
22x12
11x26
12x25
21x21
22x24
# cast the melted data
# cast(data, formula, function)
subjmeans <- cast(mdata, id~variable, mean)
timemeans <- cast(mdata, time~variable, mean)

subjmeans

   
idx1x2
145.5
242.5

timemeans

   
tiempox1x2
15.53.5
22.54.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.