r - 在 R 中打开 JSON 文件
问题描述
我从以下站点下载了一些数据作为 zip 文件并将其解压缩到我的计算机上。现在,我在尝试打开包含的 json 数据文件时遇到了麻烦。
运行以下代码:
install.packages("rjson")
library("rjson")
comp <- fromJSON("statsbomb/data/competitions")
给出了这个错误:
fromJSON("statsbomb/data/competitions") 中的错误:意外字符 's'
另外,有没有办法一次加载所有文件而不是每次都编写单独的语句?
解决方案
该函数fromJSON
将 JSON 字符串作为第一个参数,除非您指定要提供文件 ( fromJSON(file = "competitions.json")
)。
您提到的错误来自试图解析'statsbomb/data/competitions'
为字符串而不是文件名的函数。然而,在 JSON 中,所有内容都包含在括号中,字符串包含在引号内。所以s
from"statsbomb"
不是有效的第一个字符。
要读取所有 json 文件,您可以执行以下操作:
lapply(dir("open-data-master/",pattern="*.json",recursive = T), function(x) {
assign(gsub("/","_",x), fromJSON(file = paste0("open-data-master/",x)), envir = .GlobalEnv)
})
但是,这将需要很长时间才能完成!您可能应该详细说明此功能。例如,在运行 lapply 调用之前将获得的文件列表拆分dir
为 50 个块。
推荐阅读
- javascript - 如何使用 applescript 和 shell 解压缩文件,但不会收到以下错误?
- xml - 设计问题 - 是否有可能设计一个足以处理对象列表的通用 XML
- javascript - 最新版本的 Chrome 加载 xml 文件的奇怪问题
- amazon-web-services - 为 Lambda 函数保存和检索数据的最佳方式是什么?
- vba - VBA返回选项按钮选择的值
- python - 将字典重置为空字典不会释放内存吗?
- python-3.x - 如何实时检测文本?
- excel - 使用 VBA 生成 XML 文档的 UTF-8 和 ASCII 问题
- javascript - 初始未定义状态下的选择器函数错误
- javascript - 在我的浮动 div 中单击链接不起作用