En este artículo, discutiremos cómo convertir listas anidadas en marcos de datos en el lenguaje de programación R.
Se puede hacer con dos métodos:
- Convierta listas anidadas en marcos de datos por columna.
- Convierta listas anidadas en marcos de datos por fila.
Primero, creemos una lista anidada.
Bloque de código
Producción:
Método 1: convertir una lista anidada en un marco de datos por columna.
Acercarse:
- Cree un marco de datos usando la función data.frame con do.call y cbind.
- cbind se utiliza para unir las listas por columna en el marco de datos.
- do.call se usa para vincular cbind y la lista anidada como un solo argumento en la función de marco de datos.
- Además, almacene todo el marco de datos en una variable denominada data_frame e imprima la variable.
Código:
R
# list() functions are used to create # the list and those list() functions # are put in another list() function to # make the nested list nested_list <- list(l1 = list(1:5, 5:1 ), l2 = list(100:105, 105:100 ), l3 = list(200:205, 205:200 )) # Convert nested list to data frame # by column with the help of cbind and do.call data_frame <- as.data.frame(do.call(cbind, nested_list)) # Print data frame data_frame
Producción:
l1 l2 l3
1 1, 2, 3, 4, 5 100, 101, 102, 103, 104, 105 200, 201, 202, 203, 204, 205
2 5, 4, 3, 2, 1 105, 104, 103, 102, 101, 100 205, 204, 203, 202, 201, 200
Método 2: para convertir una lista anidada en un marco de datos por fila.
Acercarse:
- Cree un marco de datos usando la función data.frame con do.call y rbind.
- rbind se usa para unir las listas por fila en el marco de datos.
- do.call se usa para vincular el rbind y la lista anidada como un solo argumento en la función del marco de datos.
- Además, almacene todo el marco de datos en una variable denominada data_frame e imprima la variable.
Código:
R
# list() functions are used to create # the list and those list() functions # are put in another list() function to # make the nested list nested_list <- list(l1 = list(1:5, 5:1 ), l2 = list(100:105, 105:100 ), l3 = list(200:205, 205:200 )) # print the nested list nested_list # Convert nested list to data frame by row # with the help of rbind and do.call data_frame <- as.data.frame(do.call(rbind, nested_list)) # Print data frame data_frame
Producción:
V1 V2
l1 1, 2, 3, 4, 5 5, 4, 3, 2, 1
l2 100, 101, 102, 103, 104, 105 105, 104, 103, 102, 101, 100
l3 200, 201, 202, 203, 204, 205 205, 204, 203, 202, 201, 200
Publicación traducida automáticamente
Artículo escrito por parasharraghav y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA