我总是使用matlab来获取FRED数据,但现在我无法再获取它了 . 一个简单的代码如:
c = fred('http://research.stlouisfed.org/fred2/');
d = fetch(c,'DEXUSEU');
得到错误:索引超出矩阵维度 .
fred / fetch中的错误(第93行)d.Data = [datenum(str2num(tmp(:,1:4)),str2num(tmp(:,6:7)),str2num(tmp(:,9:10) )))str2num(tmp(:,11:end))]; %#好
调试fetch函数,它创建的url是正常的,但在第48行,当它使用urlread时,结果是:
301已永久移动永久移动文档已移至此处 .
有什么建议吗?
谢谢
1 回答
看起来FRED不喜欢非HTTPS请求 . 我在Matlab 2015a中报告了同样的错误,但是如果你将url更改为
https
,它就可以了 .如果您使用Matlab从FRED请求的网址并将其粘贴到Chrome中,您会收到有效的回复(我猜测Chrome正在做一些事情,以便在Matlab放弃时提供301错误为您提供的链接) . 他们仍然允许来自其API服务的非HTTPS请求,但基本Matlab
fetch
函数不使用实际的FRED API .更新:我刚从FRED收到以下电子邮件: