如何将长度不等的向量列表转换为数据帧

凯罗斯

我需要将以下列表转换为数据框:

list(c(13, 5, 9, 16, 1, 7, 3, 20), c(0, 1, 2, 7, 8, 14, 20), c(2, 4, 7, 9, 12, 14, 16), 0:9, c(18, 19, 20, 21, 22, 23, 6, 7, 8, 9), c(0, 1, 7, 13, 19, 6, 12, 18, 2, 8), 23:22, c(18, 13, 8), c(18, 13, 8, 3, 10, 17, 12, 6, 0, 1), c(18, 14), c(18, 19, 20, 21, 13, 7, 8, 14, 2, 1), c(13, 15, 16, 9, 8, 7, 14, 20, 19, 18))

该列表具有以下结构:

List of 1
 $ :List of 12
  ..$ : int [1:8] 13 5 9 16 1 7 3 20
  ..$ : int [1:7] 0 1 2 7 8 14 20
  ..$ : int [1:7] 2 4 7 9 12 14 16
  ..$ : int [1:10] 0 1 2 3 4 5 6 7 8 9
  ..$ : int [1:10] 18 19 20 21 22 23 6 7 8 9
  ..$ : int [1:10] 0 1 7 13 19 6 12 18 2 8
  ..$ : int [1:2] 23 22
  ..$ : int [1:3] 18 13 8
  ..$ : int [1:10] 18 13 8 3 10 17 12 6 0 1
  ..$ : int [1:2] 18 14
  ..$ : int [1:10] 18 19 20 21 13 7 8 14 2 1
  ..$ : int [1:10] 13 15 16 9 8 7 14 20 19 18

因为每个向量都可以由12个整数组成,所以我想将此列表转换为如下所示的数据帧:

    P01 P02 P03 P04 P05 P06 P07 P08 P09 P10 P11 P12
D01 13  5   9   16  1   7   3   20  NA  NA  NA  NA
D02 0   1   2   7   8   14  20  NA  NA  NA  NA  NA
D03 2   4   7   9   12  14  16  NA  NA  NA  NA  NA

... and so on

任何修复技巧都将不胜感激。

文森特·吉列莫特

您可以通过修改列表中原始向量的长度来实现。Le打电话给名单a

a <- list(
    c(13, 5, 9, 16, 1, 7, 3, 20),
    c(0, 1, 2, 7, 8, 14, 20),
    c(2, 4, 7, 9, 12, 14, 16),
    0:9,
    c(18, 19, 20, 21, 22, 23, 6, 7, 8, 9),
    c(0, 1, 7, 13, 19, 6, 12, 18, 2, 8),
    23:22,
    c(18, 13, 8),
    c(18, 13, 8, 3, 10, 17, 12, 6, 0, 1),
    c(18, 14),
    c(18, 19, 20, 21, 13, 7, 8, 14, 2, 1),
    c(13, 15, 16, 9, 8, 7, 14, 20, 19, 18)
  )

然后计算最大长度

n <- max(sapply(a, length))

并修改列表中每个元素的长度

b <- lapply(a, function(el) {length(el) <- n ; el})
res <- do.call("rbind", b)

最后,更改名称

dimnames(res) <- list(sprintf("D%02i", 1:nrow(res)), 
                     sprintf("P%02i", 1:ncol(res)))
res
# P01 P02 P03 P04 P05 P06 P07 P08 P09 P10
# D01  13   5   9  16   1   7   3  20  NA  NA
# D02   0   1   2   7   8  14  20  NA  NA  NA
# D03   2   4   7   9  12  14  16  NA  NA  NA
# D04   0   1   2   3   4   5   6   7   8   9
# D05  18  19  20  21  22  23   6   7   8   9
# D06   0   1   7  13  19   6  12  18   2   8
# D07  23  22  NA  NA  NA  NA  NA  NA  NA  NA
# D08  18  13   8  NA  NA  NA  NA  NA  NA  NA
# D09  18  13   8   3  10  17  12   6   0   1
# D10  18  14  NA  NA  NA  NA  NA  NA  NA  NA
# D11  18  19  20  21  13   7   8  14   2   1
# D12  13  15  16   9   8   7  14  20  19  18

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将具有不同长度向量的大列表转换为数据帧?

来自分类Dev

如何将数组列表转换为 Spark 数据帧

来自分类Dev

将嵌套列表(不等长)转换为数据帧

来自分类Dev

将向量列表转换为R中的数据帧

来自分类Dev

将向量列表转换为R中的数据帧

来自分类Dev

如何将字典的数据帧转换为数据帧?

来自分类Dev

如何将熊猫单列数据帧转换为序列或numpy向量

来自分类Dev

如何将两列数据帧转换为命名向量?

来自分类Dev

如何将二进制数据帧转换为向量?

来自分类Dev

如何将列表的列表转换为带有索引的数据帧中的列?

来自分类Dev

我如何将数据帧列表转换为R中的矩阵列表?

来自分类Dev

如何将R数据帧转换为列表列表?

来自分类Dev

如何将数据帧划分为特定长度且点数不等的箱?

来自分类Dev

如何将具有不同长度元素的列表转换为数据框

来自分类Dev

如何将随机长度的列表转换为熊猫中的数据框?

来自分类Dev

如何将多索引数据转换为数据帧

来自分类Dev

如何将Spark R数据帧转换为R列表

来自分类Dev

如何将列表中的多个数据帧转换为 xts 对象

来自分类Dev

如何将数据框/tibble 转换为向量的命名列表

来自分类Dev

如何将向量转换为R中的列表?

来自分类Dev

如何将Python列表转换为列向量?

来自分类Dev

如何将Python列表转换为列向量?

来自分类Dev

如何将选定的数据转换为相同的长度(形状)

来自分类Dev

如何将数据帧转换为时间序列?

来自分类Dev

如何将数据帧中的NaN转换为NA

来自分类Dev

如何将colSums转换为R到数据帧

来自分类Dev

R:如何将数据帧转换为nxn矩阵

来自分类Dev

如何将DFM转换为保留docvar的数据帧,但?

来自分类Dev

如何将熊猫数据帧转换为NumPy数组?

Related 相关文章

  1. 1

    如何将具有不同长度向量的大列表转换为数据帧?

  2. 2

    如何将数组列表转换为 Spark 数据帧

  3. 3

    将嵌套列表(不等长)转换为数据帧

  4. 4

    将向量列表转换为R中的数据帧

  5. 5

    将向量列表转换为R中的数据帧

  6. 6

    如何将字典的数据帧转换为数据帧?

  7. 7

    如何将熊猫单列数据帧转换为序列或numpy向量

  8. 8

    如何将两列数据帧转换为命名向量?

  9. 9

    如何将二进制数据帧转换为向量?

  10. 10

    如何将列表的列表转换为带有索引的数据帧中的列?

  11. 11

    我如何将数据帧列表转换为R中的矩阵列表?

  12. 12

    如何将R数据帧转换为列表列表?

  13. 13

    如何将数据帧划分为特定长度且点数不等的箱?

  14. 14

    如何将具有不同长度元素的列表转换为数据框

  15. 15

    如何将随机长度的列表转换为熊猫中的数据框?

  16. 16

    如何将多索引数据转换为数据帧

  17. 17

    如何将Spark R数据帧转换为R列表

  18. 18

    如何将列表中的多个数据帧转换为 xts 对象

  19. 19

    如何将数据框/tibble 转换为向量的命名列表

  20. 20

    如何将向量转换为R中的列表?

  21. 21

    如何将Python列表转换为列向量?

  22. 22

    如何将Python列表转换为列向量?

  23. 23

    如何将选定的数据转换为相同的长度(形状)

  24. 24

    如何将数据帧转换为时间序列?

  25. 25

    如何将数据帧中的NaN转换为NA

  26. 26

    如何将colSums转换为R到数据帧

  27. 27

    R:如何将数据帧转换为nxn矩阵

  28. 28

    如何将DFM转换为保留docvar的数据帧,但?

  29. 29

    如何将熊猫数据帧转换为NumPy数组?

热门标签

归档