【发布时间】:2020-10-23 11:10:32
【问题描述】:
我已经存储了该列在索引中缺少值的所有记录的索引值,并且我正在尝试根据两个数据帧中常见的“StockCode”列从另一个数据帧中估算 nan 值。
这就是 df_mod 的样子。 df 也相同,但描述为 nan。索引是数组,如 [1,2,3,4] snapshot of df_mod
for i in index:
if df.loc[i,'StockCode'] in df_mod['StockCode'].values:
df.loc[i,'Description']=df_mod.loc[(df_mod.StockCode==df.loc[i,'StockCode']),'Description']
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-201-ada042d0d5a1> in <module>
1 for i in index:
2 if df.loc[i,'StockCode'] in df_mod['StockCode'].values:
----> 3 df.loc[i,'Description']=df_mod.loc[(df_mod.StockCode==df.loc[i,'StockCode']),'Description']
D:\Anaconda\lib\site-packages\pandas\core\indexing.py in __setitem__(self, key, value)
188 key = com.apply_if_callable(key, self.obj)
189 indexer = self._get_setitem_indexer(key)
--> 190 self._setitem_with_indexer(indexer, value)
191
192 def _validate_key(self, key, axis):
D:\Anaconda\lib\site-packages\pandas\core\indexing.py in _setitem_with_indexer(self, indexer, value)
467
468 if isinstance(value, ABCSeries):
--> 469 value = self._align_series(indexer, value)
470
471 info_idx = indexer[info_axis]
D:\Anaconda\lib\site-packages\pandas\core\indexing.py in _align_series(self, indexer, ser, multiindex_indexer)
781 return ser.reindex(ax)._values
782
--> 783 raise ValueError('Incompatible indexer with Series')
784
785 def _align_frame(self, indexer, df):
ValueError: Incompatible indexer with Series
【问题讨论】:
标签: python pandas nan pandas-loc