R:将具有空元素的嵌套列表转换为data.frame(来自json)

艾因兹

我已经导入了一个像这样的json文件:

library(rjson)
json_str <- '[{"id": 1, "code": 7909, "text": [{"col1": "a", "col2": "some text"}], "date": "2015-12-01"}, {"id": 2, "code": 7651, "text": [], "date": "2015-12-01"}, {"id": 3, "code": 4768, "text": [{"col1": "aaa", "col2": "Blah, blah"}, {"col1": "bbb", "col2": "Blah, blah, blah"}], "date": "2015-12-01"}]'
my.list <- fromJSON(json_str)
str(my.list)

不用说,实际文件更长。

结果,我得到了一个由3个元素组成的嵌套列表,其中每个元素都是4个列表,然后,该元素$text是一个可变长度的列表,从无到有任何数量的元素(在我的情况下,通常不超过3个)。

经过一些研究,我发现了一些关于将a转换为listto的答案data.frame,例如在这里这里但是,当'$ text'中的一个或多个嵌套列表为空时,它们都不起作用。

do.call(rbind, lapply(my.list, data.frame, stringsAsFactors=FALSE))

library(data.table)
rbindlist(my.list, fill=TRUE)

两者均返回错误。

我想将列表转换$text为的几列data.frame或仅转换为一(粘贴内容)。

另一个选择是能够跳过某些元素(例如$text)并转换列表的其余部分,然后在单独的行中将那些元素(例如$text)转换为另一个data.frame我想我可以以某种方式彼此联系data.frame

谁能给我关于如何执行此操作的任何想法。谢谢

A5C1D2H2I1M1N2O1R2T1

从声音上看,类似以下的内容应该起作用:

do.call(rbind.data.frame, lapply(my.list, function(x) {
    x[["text"]] <- toString(unlist(x[["text"]]))
    x
}))
##    id code                                   text       date
## 2   1 7909                           a, some text 2015-12-01
## 21  2 7651                                        2015-12-01
## 3   3 4768 aaa, Blah, blah, bbb, Blah, blah, blah 2015-12-01

这遵循您将值粘贴在一起(此处使用toString)以在中形成单个列的想法data.frame

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将具有空值的JSON数据转换为字典

来自分类Dev

R:将具有不同行数的列表转换为data.frame

来自分类Dev

将列表转换为R中具有多个列的data.frame

来自分类Dev

将元素具有不同数量的逗号分隔数据的转换数组转换为data.frame

来自分类Dev

将元素具有不同数量的逗号分隔数据的转换数组转换为data.frame

来自分类Dev

将具有各种长度向量的列表转换为R中的data.frame的最简单方法

来自分类Dev

R-帮助将嵌套列表(?)转换为data.frame

来自分类Dev

在 MYSQL 上将具有空值或空值的字段转换为 JSON 数据

来自分类Dev

R:将 data.frame 转换为具有正确尺寸的 data.frame

来自分类Dev

R:将data.frame转换为带有data.frame标签的列表

来自分类Dev

将具有嵌套结构的JSON列表折叠为单个data.frame

来自分类Dev

将JSON转换为具有两列以上的data.frame

来自分类Dev

R将data.frame转换为json

来自分类Dev

R将列表转换为Data.Frame或Table

来自分类Dev

将列表转换为R中的data.frame

来自分类Dev

R:将列表转换为 data.frame 或矩阵

来自分类Dev

将具有重复A列值的data.frame转换为转置的data.frame

来自分类Dev

来自文本的R中的data.frame

来自分类Dev

如何转换R!使用purrr将data.frame转换为键/值列表或应用

来自分类Dev

使用R,dplyr的矩阵总和列表列(来自嵌套的data.frame)

来自分类Dev

在R中将data.frame转换为json

来自分类Dev

在R中将data.frame转换为json

来自分类Dev

当节点仅具有属性时,如何将XML转换为data.frame?

来自分类Dev

将字符向量转换为具有最大行数限制的data.frame?

来自分类Dev

将标记(S3:data.frame)转换为具有水平的因子

来自分类Dev

来自Data.frame列的公式

来自分类Dev

比较来自不同 data.frame 的日期

来自分类Dev

R中具有data.frame的多个级别的嵌套列表

来自分类Dev

如何将具有空数组的numpy数组列表转换为单个数组?

Related 相关文章

  1. 1

    如何将具有空值的JSON数据转换为字典

  2. 2

    R:将具有不同行数的列表转换为data.frame

  3. 3

    将列表转换为R中具有多个列的data.frame

  4. 4

    将元素具有不同数量的逗号分隔数据的转换数组转换为data.frame

  5. 5

    将元素具有不同数量的逗号分隔数据的转换数组转换为data.frame

  6. 6

    将具有各种长度向量的列表转换为R中的data.frame的最简单方法

  7. 7

    R-帮助将嵌套列表(?)转换为data.frame

  8. 8

    在 MYSQL 上将具有空值或空值的字段转换为 JSON 数据

  9. 9

    R:将 data.frame 转换为具有正确尺寸的 data.frame

  10. 10

    R:将data.frame转换为带有data.frame标签的列表

  11. 11

    将具有嵌套结构的JSON列表折叠为单个data.frame

  12. 12

    将JSON转换为具有两列以上的data.frame

  13. 13

    R将data.frame转换为json

  14. 14

    R将列表转换为Data.Frame或Table

  15. 15

    将列表转换为R中的data.frame

  16. 16

    R:将列表转换为 data.frame 或矩阵

  17. 17

    将具有重复A列值的data.frame转换为转置的data.frame

  18. 18

    来自文本的R中的data.frame

  19. 19

    如何转换R!使用purrr将data.frame转换为键/值列表或应用

  20. 20

    使用R,dplyr的矩阵总和列表列(来自嵌套的data.frame)

  21. 21

    在R中将data.frame转换为json

  22. 22

    在R中将data.frame转换为json

  23. 23

    当节点仅具有属性时,如何将XML转换为data.frame?

  24. 24

    将字符向量转换为具有最大行数限制的data.frame?

  25. 25

    将标记(S3:data.frame)转换为具有水平的因子

  26. 26

    来自Data.frame列的公式

  27. 27

    比较来自不同 data.frame 的日期

  28. 28

    R中具有data.frame的多个级别的嵌套列表

  29. 29

    如何将具有空数组的numpy数组列表转换为单个数组?

热门标签

归档