在熊猫中填充空值

时间:2019-11-15 21:16:41

标签: python conditional-statements missing-data fillna

如何根据其他列满足的条件来填充缺失值,例如我想仅填充基于“产品类别”列的“产品容器”列的仔细值,如果在“产品类别”中为“办公用品”,它将为“小” 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

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])