📜  将嵌套列表转换为 R 中的数据框

📅  最后修改于: 2022-05-13 01:55:52.127000             🧑  作者: Mango

将嵌套列表转换为 R 中的数据框

在本文中,我们将讨论如何在 R 编程语言中将嵌套列表转换为数据帧。

可以通过两种方法完成:

  • 按列将嵌套列表转换为数据框。
  • 按行将嵌套列表转换为数据帧。

首先,让我们创建一个嵌套列表。

代码块

输出:



图 1:嵌套列表

方法1:按列将嵌套列表转换为Data Frame。

方法:

  • 使用带有 do.call 和 cbind 的 data.frame函数创建数据框。
  • cbind 用于将列表按列绑定到数据框中。
  • do.call 用于将 cbind 和嵌套列表绑定在一起作为数据框函数的单个参数。
  • 此外,将整个数据框存储在名为 data_frame 的变量中并打印该变量。

代码:

R
# list() functuons 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


R
# list() functuons 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


输出:

方法二:将嵌套列表逐行转换为Data Frame。

方法:

  • 使用带有 do.call 和 rbind 的 data.frame函数创建数据框。
  • rbind 用于将列表按行绑定到数据框中。
  • do.call 用于将 rbind 和嵌套列表绑定在一起作为数据框函数的单个参数。
  • 此外,将整个数据框存储在名为 data_frame 的变量中并打印该变量。

代码:

电阻

# list() functuons 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 

输出: