读取DataFrame列失败

时间:2016-11-20 21:26:50

标签: python pandas

我正在使用带有Anaconda2的python 2.7。当我将txt文件简单地读入数据帧(java: non-static method getClass() cannot be referenced from a static context )然后按如下方式读取其中一列(df = pd.read_table("/home/testtab.txt",sep='\t',index_col=False))时,它会给我一个错误(见下文)。 行索引也存在,而我希望用df["col1"].head()禁用它。 index_col=False的输出如下:

df.columns

错误:

Index([u'col1', u'col2'],dtype='object')

编辑:

KeyError Traceback (most recent call last) <ipython-input-3-c472f01c3482> in <module>() ----> 1 df["col1"].head() /home/gooo/anaconda2/lib/python2.7/site-packages/pandas/core/frame.py in __getitem__(self, key) 1995 return self._getitem_multilevel(key) 1996 else: -> 1997 return self._getitem_column(key) 1998 1999 def _getitem_column(self, key): /home/gooo/anaconda2/lib/python2.7/site-packages/pandas/core/frame.py in _getitem_column(self, key) 2002 # get column 2003 if self.columns.is_unique: -> 2004 return self._get_item_cache(key) 2005 2006 # duplicate columns & possible reduce dimensionality /home/gooo/anaconda2/lib/python2.7/site-packages/pandas/core/generic.py in _get_item_cache(self, item) 1348 res = cache.get(item) 1349 if res is None: -> 1350 values = self._data.get(item) 1351 res = self._box_item_values(item, values) 1352 cache[item] = res /home/gooo/anaconda2/lib/python2.7/site-packages/pandas/core/internals.py in get(self, item, fastpath) 3288 3289 if not isnull(item): -> 3290 loc = self.items.get_loc(item) 3291 else: 3292 indexer = np.arange(len(self.items))[isnull(self.items)] /home/gooo/anaconda2/lib/python2.7/site-packages/pandas/indexes/base.py in get_loc(self, key, method, tolerance) 1945 return self._engine.get_loc(key) 1946 except KeyError: -> 1947 return self._engine.get_loc(self._maybe_cast_indexer(key)) 1948 1949 indexer = self.get_indexer([key], method=method, tolerance=tolerance) pandas/index.pyx in pandas.index.IndexEngine.get_loc (pandas/index.c:4154)() pandas/index.pyx in pandas.index.IndexEngine.get_loc (pandas/index.c:4018)() pandas/hashtable.pyx in pandas.hashtable.PyObjectHashTable.get_item (pandas/hashtable.c:12368)() pandas/hashtable.pyx in pandas.hashtable.PyObjectHashTable.get_item (pandas/hashtable.c:12322)() KeyError: 'col1' 的输出:

df.info()

1 个答案:

答案 0 :(得分:1)

pandas版本0.18.1出现问题,升级到0.19.1后效果很好。

我想也许有些错误。