如何根据其他列满足的条件来填充缺失值,例如我想仅填充基于“产品类别”列的“产品容器”列的仔细值,如果在“产品类别”中为“办公用品”,它将为“小” Box”,还有其他一些条件吗?
cnt=0
for row in salesdirty["Product_Category"]:
if salesdirty.loc[cnt,"Product_container"]==pd.isnull(salesdirty["Product_container"]):
if salesdirty.loc[cnt,"Product_Category"]=="Office Supplies":
salesdirty.loc[cnt,"Product_container"]="Small Box"
cnt+=1
答案 0 :(得分:1)
您可以使用布尔索引来过滤条件,然后对它进行任何操作:
mask = (salesdirty["Product_container"].isnull()) & (salesdirty["Product_Category"]=="Office Supplies")
# Assign new values
salesdirty["Product_Category"][mask] = "Small Box"
# Count conditions' occurences
cnt = len(mask[mask])