【发布时间】:2021-08-31 06:08:36
【问题描述】:
我有一个包含多个列的df。
df = pd.DataFrame({'Store':['M1','M2','M3','M1','M1','M2','M2','M3','M3'],
'Category':['A','A','A','B','B','B','C','C','C'],
'Price_Category':[np.nan,X,np.nan,np.nan,Y,Y,Z,np.nan,Z]})
如何仅基于Category 用模式填充Price_Category 上的NaN?
我尝试使用:
df['Price_Category'] = df.groupby('Category')['Price_Category'].apply(lambda x: x.fillna(x.mode()[0]))
但我收到此错误:KeyError: 0
我尝试过的其他方法,开始用来自Store 的名称填充NaN。
感谢您的帮助!
【问题讨论】:
-
请发布您的预期输出