机器学习异常值处理 逻辑汇总一

一 清除数据中恒定不变值

如果某个数据长时间不变,默认异常,清除掉该部分数据:

python 复制代码
# 使用 `shift` 和 `cumsum` 来创建一个分组键,每次值改变都会增加组号
g = (df['沉淀池3号进水流量'] != df['沉淀池3号进水流量'].shift()).cumsum()

# 使用 `transform` 来计算每个组的大小
counts = df.groupby(g)['沉淀池3号进水流量'].transform('count')
print('counts:', counts)
# 应用一个布尔掩码,将连续出现至少5次的值替换为 NaN
df.loc[counts >= 5, '沉淀池3号进水流量'] = np.nan

# 现在df中的'column_name'列已经将所有连续5个相同的值替换为了 NaN
df.info()

二 清除超出范围的值

指定数据范围外的值清洗:

python 复制代码
df['原水浊度'] = df['原水浊度'].apply(lambda x: x if 0.01 <= x <= 3 else None)

三 使用其中一列数据替换另一列数据

python 复制代码
all_data.loc[all_data['温度'].isnull(), '温度'] = all_data.loc[all_data['温度'].isnull(), '温度2']

四 指定条件替换某一部分数据 np.where

python 复制代码
df['沉后水浊度3'] = np.where(df.index > mid_time, 0.1, df['沉后水浊度3'])
相关推荐
Ai小way几秒前
【deepseek 实战·22】把键盘变成钢琴:五声音阶保底,怎么按都不难听
人工智能
Mr数据杨几秒前
CIFAR10 图像分类实战复盘 从 Kaggle 练习赛到可落地视觉基线
人工智能·数据分析·kaggle竞赛
zzzll11114 分钟前
LLM 学习第 24 课:Agent Harness
前端·人工智能·学习
水境传感 李兆栋7 分钟前
无需走航!水平固定式 ADCP 实现河道连续测流
人工智能
PILIPALAPENG11 分钟前
把 DeepSeek Agent(dsh)部署上云记录
人工智能
zy_destiny11 分钟前
豆包赋能抖音内容创作与运营实战指南
人工智能
X54先生(人文科技)14 分钟前
《元创力》纪实录 · 卷宗 3.5-C《协议的形状——ELR体系第一份商业合同的形成全记录》
人工智能·深度学习·架构·ai写作·开源协议
GitCode官方15 分钟前
小鸿 AI 语音案例正式上线海思案例中心!首个适配 OpenHarmony 7.0 Release 全栈开源 AI 硬件
人工智能·开源·atomgit
昇腾知识体系17 分钟前
昇腾 Atlas 800I A5 服务器:机型定位与部署入口
服务器·人工智能·华为·架构·知识图谱
小白说大模型19 分钟前
《FDE前沿部署工程师实战教程》企业 Agent 项目实战:从需求分析到 PoC 落地
人工智能·spring·机器学习·自然语言处理·chatgpt·数据挖掘·需求分析