我想从以下代码中保存我获得的财务数据:
data = FinancialData["GE","OHLCV", "Jan. 1, 2000"];
格式为:
{{yy,mm,dd},{O,H,L,C,V}}
我想要2列,一列用于{日期},另一列用于{ O , H , L , C , V }但在第二列中我想要处理每个单独的值(如列表?)
我试过了:
Export[dir <> filename <> ".csv", data];
data1 = Import[dir <> filename <> ".csv", "Table"];
还有其他格式,“列表”等。
问题是我有一个正在运行的程序来回测数据,当我从FinancialData获取数据时它工作正常,但我找不到导出和导入的方法,就像我做了FinancialData ...
例如,我不能这样想:
C = Table[data1[[i]][[2]][[4]], {i, 1, n}];
(当然,如果我放数据而不是data1,一切都有效)
有什么想法吗?
答案 0 :(得分:1)
为什么要在保持 Mathematica 列表结构完整的情况下导出到csv
?请尝试以下
data = FinancialData["GE", "OHLCV", "Jan. 1, 2000"];
Export["tmp/test.m", data]
data2 = Import["tmp/test.m"];
你会看到
data2 == data
给出True
答案 1 :(得分:0)
目前还不清楚你想要完成什么,大概有些外部程序需要读取数据?
你可以做Export["file.csv", Flatten[data,{2}]]
然后在读回来时对其进行分区:
{#[[;;3]],#[[4;;]]}&/@Import["file.csv"]