当前位置: 首页 > news >正文

北京备案网站网站建设与代运营产品介绍

北京备案网站,网站建设与代运营产品介绍,资溪县建设局网站,中国互联网公司排名2022数据清洗(Data Cleaning)详解一、什么是数据清洗数据清洗(Data Cleaning,又称 Data Cleansing 或 Data Scrubbing)是数据预处理中的核心环节。它的目标是 识别并修正数据中的错误、不一致或缺失部分,以提高…


数据清洗(Data Cleaning)详解

一、什么是数据清洗

数据清洗(Data Cleaning,又称 Data Cleansing 或 Data Scrubbing)是数据预处理中的核心环节。它的目标是 识别并修正数据中的错误、不一致或缺失部分,以提高数据质量,从而为后续的数据分析、建模和机器学习提供可靠基础。

在真实场景中,原始数据往往存在以下问题:

  • 缺失值:例如某些用户没有填写邮箱或年龄。

  • 异常值:某条记录的年龄为 200 岁,或工资为负数。

  • 重复数据:同一用户被录入多次。

  • 不一致数据:如性别字段中同时出现 Mmale

  • 格式问题:日期格式混乱,如 2025/08/1818-08-2025 混用。

如果不进行清洗,分析结果可能会严重偏差。


二、数据清洗的常见步骤

1. 缺失值处理

缺失值是最常见问题。处理方式包括:

  • 删除法:直接删除包含缺失值的行或列(适合缺失率高的情况)。

  • 填充法:用均值、中位数、众数或插值方法补全。

  • 模型预测:使用机器学习算法预测缺失值。

方法说明适用场景优缺点
删除法直接删除包含缺失值的行或列当缺失值比例较高,且该行/列对整体分析影响不大时✅ 简单快速;❌ 可能丢失有用信息
填充法均值、中位数、众数或插值方法补全当缺失值比例较小,且数据分布规律明显时✅ 保留更多数据;❌ 可能引入偏差
模型预测

使用机器学习模型(如 KNN、回归)预测缺失值

(将其他完整的列作为特征,缺失值的列作为标签,进行训练预测)

当数据复杂、缺失值对结果影响较大时✅ 填充值更合理;❌ 计算复杂度高,需额外建模

示例(Pandas):

import pandas as pd
import numpy as np# 构造样例数据
df = pd.DataFrame({"姓名": ["张三", "李四", "王五", "赵六"],"年龄": [25, np.nan, 30, 28],"工资": [5000, 6000, None, 8000]
})# 缺失值填充
df["年龄"].fillna(df["年龄"].mean(), inplace=True)   # 用均值填充
df["工资"].fillna(df["工资"].median(), inplace=True) # 用中位数填充

1. 函数作用

Pandas 中,fillna() 用于 填充缺失值 (NaN)
常见于 DataFrameSeries 对象,用来替换空值,使数据更加完整。


2. 基本语法

DataFrame.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None)


3. 参数解析

参数说明
value用于替换缺失值的值,可以是标量、字典或 Series。例如 df.fillna(0),所有 NaN 填充为 0。
method采用插值法填充:
- ffill (前向填充):用前一个非 NaN 值填充
- bfill (后向填充):用后一个非 NaN 值填充
axis填充方向:
- 0'index'(按列填充)
- 1'columns'(按行填充)
inplace是否在原对象上直接修改:
- False(默认,返回新对象)
- True(直接修改原对象,不返回)
limit限制填充的次数。例如 limit=1 只填充一次缺失值,剩下的保留 NaN。
downcast尝试将填充值转换为合适的更小的数据类型,比如从 float64 转成 int32

2. 异常值检测与处理

异常值会严重影响模型。常见方法:

  • 箱线图法(IQR):利用四分位距检测异常值。

  • Z-Score 方法:根据数据分布的标准差判断。

  • 逻辑规则:如年龄不能小于 0,工资不可能为负数。

示例(Z-Score):

from scipy import stats# 检测工资异常值
z_scores = stats.zscore(df["工资"])
df = df[(abs(z_scores) < 3)]  # 保留 |Z|<3 的数据

3. 重复数据处理

重复记录会影响统计和建模,常用方法:

# 删除重复行
df = df.drop_duplicates()

4. 数据标准化与一致化

实际数据可能存在不同的表示方法:

  • 性别字段:M/F男/女1/0

  • 日期字段:2025-08-182025/8/18

处理方式:

# 性别字段统一
df["性别"] = df["性别"].replace({"男": "M", "女": "F"})

5. 数据格式规范化

确保数据类型正确:

# 转换日期字段
df["日期"] = pd.to_datetime(df["日期"], errors="coerce")# 转换数值字段
df["工资"] = pd.to_numeric(df["工资"], errors="coerce")

三、数据清洗在项目中的意义

  • 提升数据质量:减少噪声和偏差。

  • 增强模型性能:机器学习模型对“脏数据”很敏感。

  • 节省分析成本:避免在错误数据上浪费计算和决策。

  • 确保结果可靠:让分析结论更符合业务逻辑。


四、案例:员工数据清洗

假设我们有一份员工数据,部分字段存在缺失、重复、异常情况。

import pandas as pd
import numpy as npdata = {"姓名": ["张三", "李四", "王五", "李四"],"性别": ["男", "女", "M", "male"],"年龄": [25, 200, 30, 29],"工资": [5000, 6000, None, -1000],"入职日期": ["2022-01-05", "20220110", "2022/01/15", "2022-01-20"]
}df = pd.DataFrame(data)
print("数据清洗前:\n",df)# 1. 缺失值处理
df["工资"].fillna(df["工资"].median(), inplace=True)# 2. 异常值处理(逻辑规则)
df.loc[df["年龄"] > 100, "年龄"] = df["年龄"].median()
df.loc[df["工资"] < 0, "工资"] = df["工资"].median()# 3. 重复数据去重
df = df.drop_duplicates()# 4. 一致化
df["性别"] = df["性别"].replace({"男": "M", "女": "F", "male": "M"})# 5. 日期规范化
df["入职日期"] = pd.to_datetime(df["入职日期"], errors="coerce")print("数据清洗后:\n",df)

清洗后,数据更干净,适合后续分析。


五、总结

数据清洗是数据科学和机器学习流程中至关重要的一步。主要目标是 去除噪声、修正错误、统一格式、处理缺失与异常
在实践中,可以结合 Pandas、NumPy、正则表达式、机器学习算法 等工具,构建自动化的数据清洗流程。

一句话总结:

没有高质量数据,就没有高质量模型。数据清洗是数据分析的第一步,也是最重要的一步。

http://www.dtcms.com/a/485200.html

相关文章:

  • 网站编程入门教程惠州建站免费模板
  • 网站下载器企业网络营销策划书模板
  • 广元网站开发北京活动策划网站
  • seo网站推广有哪些免费软件app
  • 建设厅技工在哪个网站上查询网站页脚设计代码
  • 如何做一个门户网站宿迁房产网商铺
  • 建站之星做网站软件推广网站
  • 网站建设周末培训液体硅胶 技术支持 东莞网站建设
  • 鞍山建设局的网站网站空间备案
  • 电商网站获取流量的方法安装wordpress建站程序
  • 烟台微信网站建设网站建设优化推广教程
  • 网站备案需要哪些资料深圳注册公司去哪里注册
  • 专业人士怎样建网站做导航网站赚钱吗
  • 中文网站怎么做英文版哈尔滨最新
  • 网站建设项目报告总结报告网站qq链接怎么做
  • 秦皇岛专业做网站网站建设用处
  • 百度做个网站要多少钱wordpress cdn 插件
  • 齐河网站建设价格怎么做网站海外推广
  • 网站怎么让谷歌收录域名的注册方式
  • 网站功能需求分析文档在网上怎么卖货
  • 专业建设金融行业网站的公司自己画装修设计图的软件
  • 网站开发外包不给ftp如何制作宣传小视频
  • 网站管理公司排名提升学历官网
  • 企业一站式网站建设中国wordpress用的人少
  • 设计网站属于什么专业竹溪县县建设局网站
  • 国际网站建设公司易语言做网站教程
  • 商城网站哪个公司做的好处网站开发设计需求文档
  • 百度做网站的东莞做网站公司哪家好
  • 福田网站建设联系电话老网站权重低的原因
  • 做网页设计网站有哪些竞价推广sem