0
我是熊猫新手,我被困在一个点上。请帮助我继续。 我有一个表和列的一个如下所示:在类似于SQL的Pandas/IPython中选择行
categories
-------------
[Bakeries, Food]
[Restaurants]
[Bakeries, Food]
,我需要选择那些包含其中value LIKE“%餐厅值作为餐厅或者值,它是如餐馆(类似于SQL行%')来自数据帧。
我查了各种论坛,我无法找到解决方案。
我该怎么做?
最新的更新:
resmdt[resmdt['categories'].str.contains('restaurant')]
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
<ipython-input-20-752afd545e7b> in <module>()
1 #cond = resm['categories'].str.contains('%Restaurants%',na=False)
----> 2 resmdt[resmdt['categories'].str.contains('restaurant')]
/usr/lib/python2.7/dist-packages/pandas/core/frame.pyc in __getitem__(self, key)
1993 if isinstance(key, (np.ndarray, list)):
1994 # either boolean or fancy integer index
-> 1995 return self._getitem_array(key)
1996 elif isinstance(key, DataFrame):
1997 return self._getitem_frame(key)
/usr/lib/python2.7/dist-packages/pandas/core/frame.pyc in _getitem_array(self, key)
2029 return self.take(indexer, axis=0, convert=False)
2030 else:
-> 2031 indexer = self.ix._convert_to_indexer(key, axis=1)
2032 return self.take(indexer, axis=1, convert=True)
2033
/usr/lib/python2.7/dist-packages/pandas/core/indexing.pyc in _convert_to_indexer(self, obj, axis)
608 mask = check == -1
609 if mask.any():
--> 610 raise KeyError('%s not in index' % objarr[mask])
611
612 return indexer
KeyError: '[ nan nan nan ..., nan nan nan] not in index'
嗨,我忘了提及该列是一个数据框的一部分。所以在这种情况下仍然会包含工作。列中的所有值都以这种形式出现[餐厅,酒吧]。所以我假设它是一个列表。我应该将整个列转换为字符串吗? – maverick 2014-09-22 15:52:57