我如何检索数据时使用Quandl连接Quandl数据库提供了表而不是时间序列数据
11视图(30天)
显示旧的评论
我如何检索数据时使用Quandl连接Quandl数据库提供了表而不是时间序列数据
Quandl数据库。每个数据库有几个证券。
有些数据库实现表API而其他API实现时间序列。
根据他们的API实现,数据库的证券将输出timeseries数据或表数据(不是MATLAB数据类型但json)
我能够成功地从证券提供时间序列数据读取数据而不是从那些给表数据(不是MATLAB数据类型但json)
错误信息从产生的响应对象:
代码:“QECx02”
信息:“你提交了一个错误的Quandl代码。请检查你的Quandl代码和再试一次。”
接受的答案
MathWorks支金宝app持团队
2020年9月14日
Quandl API使用不同的端点处理API实现的数据库表。
您可以执行以下命令来检索数据提供的Quandl表:
> > q =当(“API_KEY”);
> > q。URL =“https://www.quandl.com/api/v3/datatables”;%注意,默认URL是“https://www.quandl.com/api/v3/datasets”,你就会
%需要重置它如果他们想请求的数据集
> > data =历史(q,“SHARADAR / SF1”)
在datatable中,不幸的是,代码不是处理返回的结果(历史的函数)到MATLAB表中。例如,你可以得到第一个记录的数据:
> > data.Body.Data.datatable.data {1}
在这种情况下,返回10000条记录。
下面的代码片段将“历史”的响应函数转化为MATLAB的表:
> > numRecords =长度(data.Body.Data.datatable.data);
> >输出=细胞(numRecords、长度(data.Body.Data.datatable.columns));
> >为我= 1:numRecords
> >输出(我:)= data.Body.Data.datatable.data {};
> >结束
> > outputTable = cell2table(输出,“variablenames”,{data.Body.Data.datatable.columns.name});