如何修复Python的Pandas库中的索引错误

时间:2019-05-02 00:23:23

标签: python pandas machine-learning jupyter-notebook

我正在进行统计计算,该代码以前运行良好,可能被新的Pandas更新弄乱了。

我试图更改变量,但仍然无法正常工作。

drug1 = drug.loc[:, []].copy()
drug2 = drug1.dropna()
for i in ["DUQ200", "DUQ240", "DUQ250", "DUQ290", "DUQ330", "DUQ370", ]:
    print(drug2[i].value_counts()/drug2.count())

预期结果应该显示非常大或非常小的数字, 实际结果是:

  

-------------------------------------------------- ---------------------------- KeyError Traceback(最近的呼叫   最后)〜\ Anaconda3 \ lib \ site-packages \ pandas \ core \ indexes \ base.py在   get_loc(self,key,method,tolerance)3077试试:   -> 3078返回self._engine.get_loc(key)3079,除了KeyError:

     

pandas._libs.index.IndexEngine.get_loc()中的pandas_libs \ index.pyx

     

pandas._libs.index.IndexEngine.get_loc()中的pandas_libs \ index.pyx

     

pandas_libs \ hashtable_class_helper.pxi在   pandas._libs.hashtable.PyObjectHashTable.get_item()

     

pandas_libs \ hashtable_class_helper.pxi在   pandas._libs.hashtable.PyObjectHashTable.get_item()

     

KeyError:'DUQ240'

     

在处理上述异常期间,发生了另一个异常:

     

KeyError跟踪(最近的呼叫   最后)         对于[[DUQ240“,” DUQ250“,” DUQ290“,” DUQ330“,” DUQ370“,]中的i:   ----> 2次打印(drug2 [i] .value_counts()/ drug2.count())

     

〜\ Anaconda3 \ lib \ site-packages \ pandas \ core \ frame.py在    getitem (自身,密钥)2686返回self._getitem_multilevel(key)2687,否则:   -> 2688返回self._getitem_column(key)2689 2690 def _getitem_column(self,key):

     

〜\ Anaconda3 \ lib \ site-packages \ pandas \ core \ frame.py在   _getitem_column(self,key)2693#如果self.columns.is_unique获取列2694:   -> 2695返回self._get_item_cache(key)2696 2697#重复的列并可能降低维数

     

〜\ Anaconda3 \ lib \ site-packages \ pandas \ core \ generic.py在   _get_item_cache(self,item)2487 res = cache.get(item)2488如果res为None:   -> 2489个值= self._data.get(项目)2490 res = self._box_item_values(项目,值)2491
  cache [item] = res

     

〜\ Anaconda3 \ lib \ site-packages \ pandas \ core \ internals.py在get(self,   项目,快速路径)4113 4114如果不是isna(项目):   -> 4115 loc = self.items.get_loc(item)4116否则:4117 indexer =   np.arange(len(self.items))[isna(self.items)]

     

〜\ Anaconda3 \ lib \ site-packages \ pandas \ core \ indexes \ base.py在   get_loc(自身,键,方法,公差)3078返回   self._engine.get_loc(key)3079,除了KeyError:   -> 3080返回self._engine.get_loc(self._maybe_cast_indexer(key))3081 3082
  indexer = self.get_indexer([key],method = method,tolerance = tolerance)

     

pandas._libs.index.IndexEngine.get_loc()中的pandas_libs \ index.pyx

     

pandas._libs.index.IndexEngine.get_loc()中的pandas_libs \ index.pyx

     

pandas_libs \ hashtable_class_helper.pxi在   pandas._libs.hashtable.PyObjectHashTable.get_item()

     

pandas_libs \ hashtable_class_helper.pxi在   pandas._libs.hashtable.PyObjectHashTable.get_item()

     

KeyError:'DUQ240'

0 个答案:

没有答案