1

我正在尝试从quandl网站提取数据。我正在使用jsonliteR来提取数据。它工作正常。但是,当我将其转换为 时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

我可以看到,这个错误是因为导入的数据是列表格式的。有没有办法将它转换为数据框,以便我可以以任何格式导出它?我尝试了不同的方法,但确实取得了成功。我将不胜感激任何帮助。

4

0 回答 0