16

圣路易斯联邦储备银行在其各种网页上提供了大量数据,例如:

http://research.stlouisfed.org/fred2/series/OILPRICE/downloaddata?cid=32217 http://www.federalreserve.gov/releases/h10/summary/default.htm http://research.stlouisfed.org/弗雷德2/系列/DGS20

数据集会更新,有些甚至每天更新一次。我倾向于对每日数据感兴趣(请参阅 URLS 上的上述设置)

我想将这些价格或费率数据流(可通过上述 URL 以 CSV 或 Excel 文件形式访问)直接导入 Mathematica。

我查看了有关 Importing[] 的文档,但我发现关于如何进行此类操作的文档很少(实际上没有)。

看起来我需要导航到页面,发送一些数据来选择特定的文件和格式,触发下载,然后从我自己的机器上访问下载的数据。如果我可以直接从站点访问数据,那就更好了。

我曾希望 Wolfram Alpha 能让这类事情变得简单,但我没有取得任何成功。

FinancialData[]对于这种事情来说似乎很自然,但我不认为这样做。财务数据有很多功能,但我看不出有什么方法可以得到这种东西。

有没有人有这方面的经验,或者有人能指出我正确的方向吗?

4

4 回答 4

20

您可以Import直接从 URL。例如,可以按如下方式获取和可视化来自 Federalreserve.gov 的数据。

url = "http://www.federalreserve.gov/datadownload/Output.aspx?";
url = url<>"rel=H10&series=a660e724c705cea4b7bd1d1b85789862&lastObs=&";
url = url<>"from=&to=&filetype=csv&label=include&layout=seriescolumn";
data = Import[url, "CSV"];
DateListPlot[data[[7 ;;]], Joined -> True]

为了方便我分手了url,因为时间太长了。在我确切知道如何绘制它之前,我必须检查它的内容data——这通常是必要的步骤。我确信可以通过类似的方式获取来自 stlouisfed.org 的数据,但它需要使用带有密钥的 API 来访问它。

于 2012-01-04T00:55:48.903 回答
12

正如 Mark 所说,您可以直接从 URL 获取数据。您的石油数据可以从不同的 URL 导入:

http://research.stlouisfed.org/fred2/data/OILPRICE.txt

使用该 URL,您可以执行以下操作:

oil = Import["http://research.stlouisfed.org/fred2/data/OILPRICE.txt",
"Table", "HeaderLines" -> 12, "DateStringFormat" -> {"Year", "Month", "Day"}];
DateListPlot[oil, Joined -> True, PlotRange -> All]

请注意,“HeaderLines”->12 选项会去除前 12 行中的标题文本(您必须计算标题行才能知道要删除多少行)。我还指定了日期格式。

要查找该 URL,请像以前一样执行操作,但单击数据系列,然后在看到图表时从左侧菜单中选择查看数据。

于 2012-01-04T08:04:32.233 回答
5

该文档有一个关于从网页中提取数据的简短示例:

http://reference.wolfram.com/mathematica/howto/CleanUpDataImportedFromAWebsite.html

当然,实际需要做的事情会因页面而异。

于 2012-01-04T17:45:10.913 回答
4

在此处讨论如何使用您的 API 密钥执行此操作:

http://library.wolfram.com/infocenter/MathSource/7583/

该函数基于 API 文档。我已经有几年没有看过代码了,从记忆中我很快就把它放在一起,但我已经定期使用它超过 2 年了,没有任何问题。以下是从 1992 年初到现在的月度非季节性调整零售额示例:

在此处输入图像描述

wolfram alpha 也使用 FRED 数据,因此您可以将其用作直接导入的替代方法,但要正确查询则更加棘手。我更喜欢直接使用 FRED。同样从内存中,数据仅在发布后的第二天才能在 alpha 上获得,这不是您通常想要的。

在此处输入图像描述

于 2012-01-05T07:03:18.603 回答