2014-12-05 65 views
0

我创建了一个数据帧像这样:麻烦大熊猫访问列数据框

stock_data = pd.read_csv('http://www.google.com/finance/historical?output=csv&q=AAPL') 

它有一个Date列,但是当我打电话stock_data['Date']我得到一个关键的错误。 如何访问每行的日期?

回答

2

它看起来像一些垃圾(特别是UTF-8 BOM)找到了进入该列名:

In [16]: stock_data = pd.read_csv('http://www.google.com/finance/historical?output=csv&q=AAPL') 

In [17]: stock_data.columns 
Out[17]: Index([u'Date', u'Open', u'High', u'Low', u'Close', u'Volume'], dtype='object') 

In [18]: stock_data.columns[0] 
Out[18]: '\xef\xbb\xbfDate' 

这就是为什么它不工作。一种解决方法:

In [19]: stock_data.columns = [col.decode("utf-8-sig") for col in stock_data.columns] 

In [20]: stock_data.columns[0] 
Out[20]: u'Date' 

In [21]: stock_data["Date"].head() 
Out[21]: 
0  4-Dec-14 
1  3-Dec-14 
2  2-Dec-14 
3  1-Dec-14 
4 28-Nov-14 
Name: Date, dtype: object 
+0

谢谢你的工作 – benawad 2014-12-05 17:38:40