我正在尝试将列表从 api 的 json 数据转换为 data.frame。使用fromJSON,我得到一个嵌套列表结构,我需要将这些数据加入到其他一些数据帧中。
所以,这个列表是多维的(嵌套的)。我一直在尝试将多个元素转换为 data.frame 中的单独列,因为它与其他框架的结构相匹配并进行连接。我确信有一种优雅的方法可以做到这一点,但我似乎没有找到。在最坏的情况下,我最终可能会使用for循环。
任何帮助,将不胜感激!!!!
以下是创建列表的示例数据:
mylist <- list(structure(list(
categoryName = "cat1",
parent_categories = "parent1",
url = "/xyx.com/bca/"),
.Names = c("categoryName", "parent_categories", "url")),
structure(list(
categoryName = "cat2",
parent_categories = c("parent2", "parent3", "parent4"),
url = "/abc.com/bca"),
.Names = c("categoryName", "parent_categories", "url"))
)
我想要的输出应该是这样的
categoryName parent_categories_1 parent_categories_2 parent_categories_3 url
1 cat1 parent1 NA NA /xyx.com/bca/
2 cat2 parent2 parent3 parent4 /abc.com/bca
下面是我使用过的,但没有得到想要的结果,虽然它非常接近
ldply(mylist, function(x){ data.frame(x) })
**MY CURRENT OUTPUT**
categoryName parent_categories url
1 cat1 parent1 /xyx.com/bca/
2 cat2 parent2 /abc.com/bca
3 cat2 parent3 /abc.com/bca
4 cat2 parent4 /abc.com/bca