Python-将组中的异常值替换为max

Python-将组中的异常值替换为max,python,pandas,Python,Pandas,你能帮我处理一下这个编码部分吗 我需要通过分组来替换离群值,在Python的这个数据框架中: df=pd.DataFrame(['A','A','A','A','A','A','A','B','B','B','B','B','B','B',columns=['Key'])) df['Value']=[22,10,-100,34780,34,29,89,53,85,77,2,90,1298,65] 我需要首先按键列分组,然后使用类似以下代码检测异常值: def是异常值: 下限=s.平均值()-(

你能帮我处理一下这个编码部分吗

我需要通过分组来替换离群值,在Python的这个数据框架中:

df=pd.DataFrame(['A','A','A','A','A','A','A','B','B','B','B','B','B','B',columns=['Key']))
df['Value']=[22,10,-100,34780,34,29,89,53,85,77,2,90,1298,65]
我需要首先按键列分组,然后使用类似以下代码检测异常值:

def是异常值:
下限=s.平均值()-(s.标准值()*4.7)
上限=s.平均值()+(s.标准值()*4.7)
返回~s.between(下限、上限)
一旦确定了记录,我需要用第二个最大值(或中位数*2?)替换高离群值,用第二个最小值替换低离群值

与示例中相同的组中可能存在多个异常值


谢谢你的帮助

您能否以可以在文本编辑器中复制的方式添加数据帧,或者您可以创建数据帧?因为如果将函数应用于示例数据,则返回的都是False。感谢您的反馈。我更新了帖子,加入了数据框设置。你能用一种可以在文本编辑器中复制的方式添加数据框吗?因为如果将函数应用于示例数据,则返回的都是False。感谢您的反馈。我更新了帖子,加入了数据框设置