Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用平均聚合值筛选分组依据?_Python_Python 3.x_Pandas - Fatal编程技术网

Python 使用平均聚合值筛选分组依据?

Python 使用平均聚合值筛选分组依据?,python,python-3.x,pandas,Python,Python 3.x,Pandas,我有一个df,看起来像: Order Number | Item | Price | Total 555 Apple 2 10 555 Orange Juice 3 10 555 Water 1 10 555 AppleJuice 4 10 444 Wa

我有一个df,看起来像:

Order Number |       Item  |    Price  | Total
 555            Apple             2     10
 555            Orange Juice      3     10
 555            Water             1     10
 555            AppleJuice        4     10
 444            WaterMellonJuice  5     13
 444            Bread             8     13
我想计算所有包含果汁的订单的平均价格, 因此,所有订单总计的平均值(整个订单的总计值相同),但可以包含单词Juice(它可以是任何类型的Juice)

我如何修改我的代码来解释这一点

我有这样的代码

df[df.Item.str.contains('juice|Juice')]
这给了我所有包含单词juice的行,但是我想调整代码,给我所有包含单词juice的订单的平均总金额

注意:对于每个订单中的每一行,总计都是相同的,我不想重复计算,例如,对于订单555,总计为33美元,当我平均订单中至少有一次果汁或果汁的所有订单时,我只想将该金额作为一个数字

所需输出为订单中至少包含果汁或果汁一次的所有订单的平均总输出

谢谢

你可以试试熊猫


您好,请尝试
df[df.Item.str.contains('juice | juice')].groupby('Order Number')['Total'].mean()
您可以添加已执行的输出数据帧吗?
df.loc[df['Item'].str.contains('juice', case=False, regex=False), 'Total'].mean()