r - 如何将列表列表转换为列表数组?

标签 r

我在 R 中有一个列表列表。我想将其转换为列表数组,但我只得到一个列表列表数组:

r <- list(list(a=1, b=NULL, c=NULL, d=1.23),
          list(a=2, b=NULL, c=NULL, d=3.32),
          list(a=3, b=NULL, c=NULL, d=2.13),
          list(a=4, b=NULL, c=NULL, d=3.25),
          list(a=5, b=NULL, c=NULL, d=0.14),
          list(a=6, b=NULL, c=NULL, d=5.13))
x <- array(r, dim=c(3,2))
x[1,1] # now a list of length 1 containing an element which is a list with components a--d

如您所见,x[1,1](例如)现在是列表的列表,但“外部”列表毫无用处。我宁愿有一个数组y,其中y[i,j]x[i,j][[1]]。获得此结果的最佳方法是什么(使用 base-R 中的函数(无需额外的包))?

我尝试使用一些 unlist() hackery,例如 array(unlist(r, recursive=FALSE), dim=c(3,2)),但是那失败。 sapply(r, FUN=I) 至少给出一个矩阵......也许这有帮助(?)

最佳答案

使用双括号,x[[1,1]]

关于r - 如何将列表列表转换为列表数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14091209/

相关文章:

r - 按 NoData 分割数值向量

非数值数据帧上的 R 相关性

r - 如何知道R包依赖哪些linux库?

r - 如何估计 Gamma 距离的形状和尺度。具有特定均值和 95% 分位数?

mysql - 将access 2007链接到mysql

r - 检测 R 中另一个字符向量中的字符向量的任何模式

r - 使用 ggplot2 绘制坐标之间的线

r - 如何根据另一个数据框中的多个列值进行过滤?

python - 如何使用 rpy2 显示在 python 中创建的热图?

r - 使用 .SD 计算 data.table 中列子集的累积和