Extraer datos de un dataframe anidado en el mismo registro
Tengo este dataframe principal:
testdataframe
id sensors_data
<chr> <list>
1 AA <data.frame [6 × 4]>
2 BB <data.frame [6 × 4]>
Y cada dataframe de sensors_data se ve así:
id type value status
<chr><chr> <dbl> <int>
1 SN01TP a 25.800 1
2 SN01HU b 40.000 1
3 SN02VD c 1.146 1
4 SN02C2 d 1270.000 1
5 SY01DS e 31.000 1
6 TD01TP f 22.500 1
Quisiera que mi dataframe principal, en lugar de solo tener sensors_data
, se vea así:
a b c d e f
1 25.800 40.000 1.146 1270.000 31.000 22.500
He intentado hacer “unnesting” en el dataframe principal, pero eso crearía un registro por cada campo. Lo que estoy intentando es mutar el dataframe principal para acceder a los datos dentro de sensors_data, pero no puedo encontrar la forma.
davy.ai
Una solución para obtener la salida deseada sería usar los paquetes
dplyr
ytidyr
en R. Aquí hay un ejemplo de código:El dataframe resultante
new_df
debería lucir así:Como puedes ver, la función
unnest()
se utiliza para extraer los datos de la columna anidadasensors_data
, y luego la funciónpivot_wider()
se utiliza para remodelar los datos en el formato deseado. La funciónselect()
se utiliza para eliminar la columnaid
, ya que no se necesita en la salida final.