我正在尝试从quandl网站提取数据。我正在使用jsonlite
库R
来提取数据。它工作正常。但是,当我将其转换为 时dataframe
,它会抛出以下错误
Error in (function (..., row.names = NULL, check.rows = FALSE, check.names = TRUE, :
arguments imply differing number of rows: 1, 9, 0, 14484
我正在使用下面的代码来提取数据并将其转换为数据框,以便我可以使用R
.
library(jsonlite)
url = "https://www.quandl.com/api/v3/datasets/CHRIS/CME_S1.json"
data=jsonlite::fromJSON(url, simplifyDataFrame = TRUE)
data = plyr::ldply(data, rbind)
数据类型是list
:
str(data)
List of 1
$ dataset:List of 21
..$ id : int 10922651
..$ dataset_code : chr "CME_S1"
..$ database_code : chr "CHRIS"
..$ name : chr "Soybean Futures, Continuous Contract #1 (S1) (Front Month)"
..$ description : chr "Historical Futures Prices: Soybean Futures, Continuous Contract #1. Non-adjusted price based on spot-month continuous contract "| __truncated__
..$ refreshed_at : chr "2017-01-04T07:29:55.688Z"
..$ newest_available_date: chr "2017-01-03"
..$ oldest_available_date: chr "1959-07-01"
..$ column_names : chr [1:9] "Date" "Open" "High" "Low" ...
..$ frequency : chr "daily"
..$ type : chr "Time Series"
..$ premium : logi FALSE
..$ limit : NULL
..$ transform : NULL
..$ column_index : NULL
..$ start_date : chr "1959-07-01"
..$ end_date : chr "2017-01-03"
..$ data : chr [1:14484, 1:9] "2017-01-03" "2016-12-30" "2016-12-29" "2016-12-28" ...
..$ collapse : NULL
..$ order : NULL
..$ database_id : int 596
我可以看到,这个错误是因为导入的数据是列表格式的。有没有办法将它转换为数据框,以便我可以以任何格式导出它?我尝试了不同的方法,但确实取得了成功。我将不胜感激任何帮助。