我已经在SAS中构建了一些东西来拉下雅虎!财务.csv数据。我现在构建的代码工作正常,我已经在代码中构建了一些强大的错误处理。我对数据的问题是.csv提要不受支持且不干净。
数据以逗号分隔,但某些数据中也包含逗号。有些字段是引号,有些则不是。田地的长度也变化很大。例如,市场资本市场(Market Capitlisation)这样的领域可以运行数百万到数千亿。
因此,如果您将多个股票的多个股票指标传递给Yahoo!在API的同时,您将获得.csv数据行,其中每个字段位于不同的位置,长度不同且分隔不一致。
我尝试了多个infile选项,可以单独处理这些错误,但不是所有错误都在一起。我唯一有效的解决方案是同时下载多个股票的单一股票指标。
这给了我想要的东西,但是运行纳斯达克和纽约证券交易所的数据需要一个多小时。我是否忽略了处理此类问题的另一种方法?
由于
答案 0 :(得分:1)
这是一种做你正在寻找的方法的大纲。执行此操作的所有代码在此处发布时间太长,超出了本网站的范围。
创建一个SAS程序,该程序从SYSPARM自动宏中获取股票代码,并将数据下载到与代码相同的数据集中,并将其下载到永久库中。
SYSPARM宏由您在命令行上设置的值调用SAS
sas.exe myprog.sas -sysparm XYZ
这会将& SYSPARM设置为解析XYZ
编写一个SAS程序,将所有股票代码数据集合并在一起,以便进一步处理。
使用Perl或Python等语言(或shell脚本等)创建程序,循环遍历一系列代码并调用您的SAS程序,通过SYSPARM传递代码。
使用该语言的线程,分叉等程序包可以同时运行多个这些程序包。您可以在计算机上访问多个CPU核心,因为此处理不会占用大量CPU资源。测试值找到一个有效的值。
从同一种语言调用您的SAS程序来合并数据集。