如何在循环中跳过警告 [wolfram-mathematica]
How to skip warnings in a loop [wolfram-mathematica]
我的目标是使用 FinancialData[] 读取纳斯达克所有可用股票的数据,并对其进行一些计算。问题是(我已经因此联系了支持人员,这是一个已知问题),如果我使用
Slist = FinancialData["NASDAQ:*", "Lookup"];
读取所有可用的股票代码,然后
Dlist = FinancialData[#] & /@ Slist;
要下载当前市场价格,这并不适用于所有条目,因为数据库中存在错误,并且 mathematica 会给出几条警告:
NASDAQ:AAMALX is not a known entity, class, or tag for FinancialData.
Use FinancialData[] for a list of entities.
既然这没办法,我现在想找到一种方法只读入工作条目并跳过有警告的条目。尽管我已经对允许这样做的可能函数进行了相当多的研究(例如在 for 循环中),但我无法提出解决方案。
即使是关于我必须看的方向的简短提示,也会非常有帮助。我在 Mac.
上使用 Mathematica 10
使用Quiet
抑制警告信息,然后select个案例。
Slist = FinancialData["NASDAQ:*", "Lookup"];
Dlist = Cases[Quiet[{#, FinancialData[#]} & /@ Slist], {_, _?NumberQ}]
我的目标是使用 FinancialData[] 读取纳斯达克所有可用股票的数据,并对其进行一些计算。问题是(我已经因此联系了支持人员,这是一个已知问题),如果我使用
Slist = FinancialData["NASDAQ:*", "Lookup"];
读取所有可用的股票代码,然后
Dlist = FinancialData[#] & /@ Slist;
要下载当前市场价格,这并不适用于所有条目,因为数据库中存在错误,并且 mathematica 会给出几条警告:
NASDAQ:AAMALX is not a known entity, class, or tag for FinancialData.
Use FinancialData[] for a list of entities.
既然这没办法,我现在想找到一种方法只读入工作条目并跳过有警告的条目。尽管我已经对允许这样做的可能函数进行了相当多的研究(例如在 for 循环中),但我无法提出解决方案。
即使是关于我必须看的方向的简短提示,也会非常有帮助。我在 Mac.
上使用 Mathematica 10使用Quiet
抑制警告信息,然后select个案例。
Slist = FinancialData["NASDAQ:*", "Lookup"];
Dlist = Cases[Quiet[{#, FinancialData[#]} & /@ Slist], {_, _?NumberQ}]