Python-比较多个列

时间:2019-08-12 01:05:37

标签: python pandas csv

如果所有产品的尺寸都为零,我正在尝试使用熊猫从csv停用某些产品的库存。 Psuedo-将所有产品按“ desc”分组,如果所有“ instock”等于零,则将true返回到“ inactive”

我曾尝试对熊猫使用groupby函数,但无法理解它的工作原理。

这是csv,我试图解释我的意思...

enter image description here

2 个答案:

答案 0 :(得分:2)

您可以使用groupby transform

进行检查
df['instack']=df['instack'].eq(0).groupby(df['desc']).transform('all')

答案 1 :(得分:1)

df.loc[df.groupby('desc')['instock'].transform(sum).eq(0), 'inactive'] = 'T'

groupby / transform返回一个布尔掩码,其中每个组的库存序列之和等于零。将此数据包装在dataframe loc语句中,以仅选择掩码为True的那些行,并将非活动列设置为'T'。