2016-02-26 85 views
0

我需要从大熊猫的DataReader解析输出一些帮助:解析pandas.io.data.DataReader输出

history = pandas.io.data.DataReader("YHOO", "yahoo", '2010/1/1',) 

印刷历史收益率:

Date  Open  High  Low   Close  Volume 
2010-01-04 131.179993 132.970001 130.850006 132.449997 6155300 
2010-01-05 131.679993 131.850006 130.100006 130.850006 6841400 

,但我想保存此信息在SQLite如:

wildcards = ','.join(['?'] * len(df.columns)) 
insert_sql = 'INSERT INTO %s VALUES (%s, %s)' % (tableName, symbol, wildcards) 

如何从返回的读取器提取数据:open, high, low, close, volume, adj close

我可以在调试器中看到结构,但不知道哪个/如何将数据放入通配符中?我想通过数据循环并插入每一行?

回答

0

熊猫数据框实际上有一个to_sql方法,您可以使用它来将数据写入sqlite数据库,而无需手动准备插入语句。它会创建表,如果它不存在,或者您可以告诉它附加到现有的表。 Check out the doco to see all the options

+0

谢谢,我用过这种方法,效果很好。我想对表格有更多的控制权。我想循环通过数据框来获取每个条目的索引(日期)和开放,高。我可以通过这种方式将ticker添加到表中。我可以在调试器中看到数据,但不知道如何引用帧中的数据。我想用于在框架中的行.... – jjuser

+0

我一直在搜索: 所以这将得到我的数据后,因为我是新来的! 这是一种可接受的方式从读者中获取数据吗? 计数= 0 最大= history.shape [0] 而计数<最大: 打印(history.index [COUNT]) 打印(history.iloc [计数,0]) 打印(history.iloc [计数, 1]) print(history.iloc [count,2]) print(history.iloc [count,3]) print(history.iloc [count,4]) print(history.iloc [count,5] ) count + = 1 – jjuser