如何使用jsonlite包将数据从json格式导入到R中

Aja*_*hri 2 json r jsonlite

我这样做

newzips=fromJSON("http://media.mongodb.org/zips.json")
Run Code Online (Sandbox Code Playgroud)

您可以在http://media.mongodb.org/zips.json上查看数据

并得到这样的

str(newzips)
 List of 5
 $ city : chr "ACMAR"
 $ loc  : num [1:2] -86.5 33.6
 $ pop  : num 6055
 $ state: chr "AL"
 $ _id  : chr "35004\"}{\"city\":\"ADAMSVILLE\",\"loc\":[-86.959727,33.588437],\"pop\":10616,\"state\":\"AL\",\"_
Run Code Online (Sandbox Code Playgroud)

Jer*_*oen 6

这种格式称为jsonlines.您可以使用stream_injsonite中的函数导入它:

library(jsonlite)
zips <- stream_in(url("http://media.mongodb.org/zips.json"))
Run Code Online (Sandbox Code Playgroud)

如果服务器使用https,您可以使用该curl包:

library(jsonlite)
library(curl)
zips <- stream_in(curl("https://media.mongodb.org/zips.json"))
Run Code Online (Sandbox Code Playgroud)

每行是记录的数据集通常是nosql数据库转储.因为它们可能太大而无法同时解析所有内容,所以它们是逐行导入的,这正是jsonlite所做的.