[英]JSON to R data.frame
我在使用rjson
包將JSON轉換為R data.frame
。
我開始於:
library("rjson")
json_file <- "btcusd.txt"
json_data <- fromJSON(paste(readLines(json_file), collapse=""))
btcusd.txt
文件包含以下內容:
{"Response":"Success","Type":100,"Aggregated":true,"Data":
[{"time":1510650000,"close":6488.28,"high":6618.69,"low":6482.22,"open":6492.35,"volumefrom":9422.44,"volumeto":61626698.63},
{"time":1510671600,"close":6541,"high":6592.05,"low":6487.35,"open":6549.1,"volumefrom":12618.61,"volumeto":82634018.7},],
"TimeTo":1511298000,"TimeFrom":1510574400,"FirstValueInArray":true,"ConversionType":{"type":"direct","conversionSymbol":""}}
誰能幫我把它變成一個data.frame嗎?
我會嘗試jsonlite
包。
根據您的經驗,我會嘗試以下方法:
install.packages("jsonlite")
library(jsonlite)
mydata <- fromJSON("btcusd.txt")
但是,我檢查了您的數據,結果很混亂。 您能否提供一些其他信息? 如果那是來自API,那么閱讀XML版本可能會更容易。
JSON輸入中有一個逗號。 如果刪除逗號,則可以:
json_txt <- '{
"Response": "Success",
"Type": 100,
"Aggregated": true,
"Data": [{
"time": 1510650000,
"close": 6488.28,
"high": 6618.69,
"low": 6482.22,
"open": 6492.35,
"volumefrom": 9422.44,
"volumeto": 61626698.63
}, {
"time": 1510671600,
"close": 6541,
"high": 6592.05,
"low": 6487.35,
"open": 6549.1,
"volumefrom": 12618.61,
"volumeto": 82634018.7
}],
"TimeTo": 1511298000,
"TimeFrom": 1510574400,
"FirstValueInArray": true,
"ConversionType": {
"type": "direct",
"conversionSymbol": ""
}
}'
data.frame(fromJSON(json_txt))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.