我有一个表格
我想用95th百分位数从
对于单个type值,我可以像这样操作:
df
,类似于这样,但更长且具有许多其他type
值。
type | weight |
---|---|
a | 35.1 |
a | 36.7 |
b | 100.2 |
b | 99.3 |
b | 102.0 |
b | 5.0 |
a | 38.2 |
a | 250.8 |
df
中删除所有异常值,但要将其拆分为type
列中的单个值。对于单个type值,我可以像这样操作:
my_perc = 95
temp = df[df['type'] == 'a']
temp[temp.weight < np.percentile(temp.weight, my_perc)]
现在我想自动处理整个表格 df
,并考虑到类型列中的各个组。
我也尝试了以下代码:
df[df.groupby(['type'])['weight'] < np.percentile(df.weight, my_perc)]
但是它不起作用。
你有什么想法吗?
my_perc
之间传递0到1的值,现在它是95
,请改为0.95
。 - ThePyGuy