我有日期明智的股票csv文件如下。在
EQ070717.CSV
EQ070716.CSV
EQ070715.CSV
[...]
他们有以下格式的库存数据:
^{pr2}$我如何将它们转换为股票特定的csv文件,可以作为pandas datafframe加载。我可以在.net中实现,但只想知道python/pandas中是否有任何简单的方法。在
编辑:添加预期输出
根据股票名称创建单个股票文件:
ABB.csv
AEGI.csv
HDFC.csv
对于每个股票,从所有文件中提取股票数据并添加到该股票csv: 例如stock ABB,从每个日期的csv读取股票数据,并将该信息添加到csvABB.csv公司。日期值也可以从文件名或文件修改日期属性中选取。在
DATE, OPEN,HIGH,LOW,CLOSE
070717, 1457.70,1469.95,1443.80,1452.90
070716, 1456.70,1461.95,1441.80,1450.90
070715, 1455.70,1456.95,1441.80,1449.90
我认为您需要^{} 来选择所有文件,在
list comprehension
中创建DataFrames
dfs
的列表,然后使用{a2}从所有CSV
中创建一个大的DataFrame
:如果需要,输出
^{pr2}$DataFrame
中的文件名:我的方法是用一个表建立一个sqlite数据库。只有三列,marketŠdate,symbol,和csv_string(如果您希望保留相对位置,可以用col表示文件中的line#)。读取所有文件并逐行将数据加载到表中。在“符号”列的表上创建索引。然后为
read symbol, csv_string from stock_table order by symbol, market_date
创建一个光标。使用itertools.groupby通知您何时循环了所有符号,以便关闭最后一个文件并打开下一个文件。在当然,如果你没有足够的数据可以全部放入内存,你只需在一个列表中插入元组,对列表进行排序,然后使用groupby循环生成文件。在
添加到@jezrael解决方案中。因为用户想要每个股票特定的csv文件。在
相关问题 更多 >
编程相关推荐