我正在尝试从URL导入JSON数据并将其另存为数据帧。一旦我在单行/列格式数据框中,我想执行清除操作,如删除一些值和列。
我正在使用jsonlite包自动解析数据并以数据帧格式保存。但是,它似乎创建了一个数据帧列表而不是一个数据帧。
#install
install.packages("jsonlite")
#load
library(jsonlite)
#fetch JSON data
litejson <- "https://data.maryland.gov/api/views/pdvh-tf2u/rows.json?accessType=DOWNLOAD"
myjson <- fromJSON(litejson)
print(myjson)
# It seems the jsonlite didn't parse the data properly. It is a list of data frames instead of one single data frame.
str(myjson)
#WHAT AM I DOING WRONG?
答案 0 :(得分:2)
要获得data.frame
,只需执行
df <- data.frame(myjson$data)
str(df)
'data.frame': 18638 obs. of 26 variables:
$ X1 : Factor w/ 18638 levels "1","10","100",..: 1 9751 10862 11973 13084 14195 15306 16417 17528 2 ...
$ X2 : Factor w/ 18638 levels "0006A909-5D07-4AFF-A282-439A725518E0",..: 18379 15224 7798 6286 6035 13134 12495 3981 4781 8051 ...
答案 1 :(得分:1)
只需将其下载为csv即可。它节省了大量的转换代码......
df <- read.csv("https://data.maryland.gov/api/views/pdvh-tf2u/rows.csv", stringsAsFactors=FALSE)