首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将大量的json对象转换为dataframe R

将大量的json对象转换为dataframe R
EN

Stack Overflow用户
提问于 2016-01-11 13:18:13
回答 1查看 269关注 0票数 2

我在一个json文件中有大量相同格式的json对象,如下所示。我想把它们转换成R数据帧,然后在输入命令时提取lantency.But的所有值

代码语言:javascript
复制
json_data <- fromJSON(file=json_flie)

只有第一个json对象存储在dataframe中,那么我该怎么办?谢谢!

{“任务”:{“类型”:“ping”,"id":1,“值”:“159 152 153 149 147 150 151 148 149","IsFinished":true},{”类型“:”延迟“,"id":2,”值“:147,"IsFinished":true},{”类型“:”吞吐量“,"id":3,”值“:”“,"IsFinished":false},{”类型“:”DNS“,"id":4,"value":12,"IsFinished":true},"measurementTimes":10,"url":""}{"task":{"type":"ping","id":1,"value":“166 165 179 181 159 162 166 159 161 162","IsFinished":true},{”type“:”IsFinished“,"id":2,"value":159,"IsFinished":true},{”type“:”吞吐量“,"id":3,"value":"","IsFinished":false},{"type":"DNS","id":4,"value":7,"IsFinished":true},"measurementTimes":10,"url":""}{"task":{"type":"ping","id":1,"value":“172 159 160 159 159 159 158 160 162","IsFinished":true},{”type“:”延迟“,"id":2,"value":158,"IsFinished":true},{“type”:“吞吐量”,"id":3,"value":"","IsFinished":false},{"type":"DNS","id":4,"value":14,"IsFinished":true},"measurementTimes":10,"url":""}{"task":{"type":"ping","id":1,"value":“182 192 171 184 160 159 156 157 180 171","IsFinished":true},{”type“:”延迟“,"id":2,"value":156,"IsFinished":true},{”type“:”吞吐量“,"id":3,"value":"","IsFinished":false},{"type":"DNS","id":4,"value":26,"IsFinished":true},"measurementTimes":10,“url”:“”}{“任务”:{“类型”:“ping”,"id":1,“值”:“158 186 168 189 190 233 168 160 188 157","IsFinished":true},{”类型“:”延迟“,"id":2,”值“:157,"IsFinished":true},{”类型“:”吞吐量“,"id":3,”值“:”“,"IsFinished":false},{”类型“:”DNS“,"id":4,"value":1,"IsFinished":true},"measurementTimes":10,"url":""}

EN

回答 1

Stack Overflow用户

发布于 2016-01-11 13:50:15

您的输入JSON格式不正确,并且在根级别有多个元素"task"。这类似于定义一个具有多个根的XML文档,这当然是不允许的。如果您创建了一个包含"task"元素数组的外部元素,那么您将能够使用fromJSON成功地将文件加载到R中。下面是文件应该是什么样子:

代码语言:javascript
复制
{
    "root" : [
        {
            "task":
            [
                {"type":"ping","id":1,"value":" 159 159 152 153 149 147 150 151 148 149","IsFinished":true},
                {"type":"latency","id":2,"value":147,"IsFinished":true},
                {"type":"throughput","id":3,"value":"","IsFinished":false},
                {"type":"DNS","id":4,"value":12,"IsFinished":true}
            ],
            "measurementTimes":10,
            "url":""
        },
        {
            "task":
            [
                {"type":"ping","id":1,"value":" 166 165 179 181 159 162 166 159 161 162","IsFinished":true},
                {"type":"latency","id":2,"value":159,"IsFinished":true},
                {"type":"throughput","id":3,"value":"","IsFinished":false},\
                {"type":"DNS","id":4,"value":7,"IsFinished":true}
            ],
            "measurementTimes":10,
            "url":""
        },

    ... and so on for other entries

    ]
}

下面是我在R控制台中看到的内容:

代码语言:javascript
复制
> summary(json_data)
      Length Class  Mode
root 5      -none- list

输入变量名json_data会给我一个关于整个JSON结构的转储。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34714626

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档