小编aid*_*att的帖子

为 python/pandas 中的每一行分配组平均值

我有一个数据框,我希望根据商店和所有商店计算平均值。我创建了代码来计算平均值,但我正在寻找一种更有效的方法。

DF

Cashier#     Store#     Sales    Refunds
001          001        100      1
002          001        150      2
003          001        200      2
004          002        400      1
005          002        600      4
Run Code Online (Sandbox Code Playgroud)

DF-期望

Cashier#     Store#     Sales    Refunds     Sales_StoreAvg    Sales_All_Stores_Avg
001          001        100      1            150               290
002          001        150      2            150               290
003          001        200      2            150               290
004          002        400      1            500               290
005          002        600      4            500               290
Run Code Online (Sandbox Code Playgroud)

我的尝试我创建了两个额外的数据框,然后进行了左连接

df.groupby(['Store#']).sum().reset_index().groupby('Sales').mean() 
Run Code Online (Sandbox Code Playgroud)

python group-by mean pandas pandas-groupby

5
推荐指数
1
解决办法
1812
查看次数

如何删除值频率小于 5 的行?蟒蛇,熊猫

我有一个包含很多行的数据框。有时,价值观是其中之一,对我的目的不是很有用。

如何从第 2 列和第 3 列的值出现不超过 5 次的地方删除所有行?

df 输入

 Col1     Col2     Col3       Col4
 1        apple    tomato     banana
 1        apple    potato     banana
 1        apple    tomato     banana
 1        apple    tomato     banana
 1        apple    tomato     banana
 1        apple    tomato     banana
 1        grape    tomato     banana
 1        pear     tomato     banana
 1        lemon    tomato     banana
Run Code Online (Sandbox Code Playgroud)

输出

 Col1     Col2     Col3       Col4
 1        apple    tomato     banana
 1        apple    tomato     banana
 1        apple    tomato     banana
 1        apple    tomato     banana
 1        apple    tomato     banana
Run Code Online (Sandbox Code Playgroud)

python pandas

4
推荐指数
2
解决办法
8513
查看次数

当频率小于3时,如何进行逐列计数和更改值?

我有一个日期框架,有很多行,有一些低频值.我需要进行逐列计数,然后在频率小于3时更改值.

DF-输入

Col1     Col2     Col3       Col4
 1        apple    tomato     apple
 1        apple    potato     nan
 1        apple    tomato     banana
 1        apple    tomato     banana
 1        apple    tomato     banana
 1        apple    tomato     banana
 1        grape    tomato     banana
 1        pear     tomato     banana
 1        lemon    tomato     burger
Run Code Online (Sandbox Code Playgroud)

DF-输出

Col1     Col2     Col3       Col4
 1        apple    tomato     Other
 1        apple    Other      nan
 1        apple    tomato     banana
 1        apple    tomato     banana
 1        apple    tomato     banana
 1        apple    tomato     banana
 1        Other    tomato     banana
 1        Other    tomato     banana
 1 …
Run Code Online (Sandbox Code Playgroud)

python replace pandas

3
推荐指数
1
解决办法
52
查看次数

通过在熊猫中的位置选择多个数据框列

我有一个(大)数据框。如何按位置选择特定的列?例如第1..3、5、6列

我试图以这种方式而不是只删除column4,因为我的数据集中有很多行,我想按位置进行选择:

 df=df[df.columns[0:2,4:5]]
Run Code Online (Sandbox Code Playgroud)

但这给 IndexError: too many indices for array

DF输入

 Col1     Col2     Col3       Col4        Col5       Col6
 1        apple    tomato     pear        banana     banana
 1        apple    grape      nan         banana     banana
 1        apple    nan        banana      banana     banana
 1        apple    tomato     banana      banana     banana
 1        apple    tomato     banana      banana     banana
 1        apple    tomato     banana      banana     banana
 1        avacado  tomato     banana      banana     banana
 1        toast    tomato     banana      banana     banana
 1        grape    tomato     egg         banana     banana
Run Code Online (Sandbox Code Playgroud)

DF输出-所需

 Col1     Col2     Col3       Col5       Col6
 1        apple    tomato …
Run Code Online (Sandbox Code Playgroud)

python select indices pandas

0
推荐指数
2
解决办法
5794
查看次数

标签 统计

pandas ×4

python ×4

group-by ×1

indices ×1

mean ×1

pandas-groupby ×1

replace ×1

select ×1