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

tp框架做网站的优点郑州百度推广公司

tp框架做网站的优点,郑州百度推广公司,宁波网站设计公司排名,wordpress邮件模板一、数据清洗概述 数据清洗是数据分析过程中至关重要的一步,约占整个数据分析过程的60%-80%的时间。主要包括处理缺失值、异常值、重复值、格式不一致等问题。 二、常用工具 主要使用Python的Pandas库进行数据清洗: import pandas as pd import nump…

一、数据清洗概述

数据清洗是数据分析过程中至关重要的一步,约占整个数据分析过程的60%-80%的时间。主要包括处理缺失值、异常值、重复值、格式不一致等问题。

 二、常用工具

主要使用Python的Pandas库进行数据清洗:

import pandas as pd

import numpy as np

 三、常见数据问题及处理方法

3.1缺失值处理

(1)创建示例数据

data = {'姓名': ['张三', '李四', '王五', '赵六', None],

        '年龄': [25, 30, None, 35, 40],

        '工资': [5000, 6000, 5500, None, 7000]}

df = pd.DataFrame(data)

(2) 查看缺失值

print(df.isnull().sum())

(3)处理方法

处理方法1:删除缺失行

df_drop = df.dropna()

print("删除缺失值后的数据:\n", df_drop)

 处理方法2:填充缺失值

df_fill = df.fillna({'姓名': '未知', '年龄': df['年龄'].mean(), '工资': df['工资'].median()})

print("填充缺失值后的数据:\n", df_fill)

 处理方法3:插值法

df['年龄'] = df['年龄'].interpolate()

print("插值处理后的数据:\n", df)

3.2重复值处理

(1)创建含重复值的数据

data = {'姓名': ['张三', '李四', '张三', '王五', '李四'],

        '年龄': [25, 30, 25, 35, 30],

        '工资': [5000, 6000, 5000, 5500, 6000]}

df = pd.DataFrame(data)

(2)检查重复值

print("重复值数量:", df.duplicated().sum())

(3)删除完全重复的行

df_drop_dup = df.drop_duplicates()

print("去重后的数据:\n", df_drop_dup)

(4)基于特定列删除重复值

df_drop_dup_name = df.drop_duplicates(subset=['姓名'])

print("基于姓名去重后的数据:\n", df_drop_dup_name)

3.3异常值处理

(1)创建含异常值的数据

import numpy as np

import pandas as pd

import matplotlib.pyplot as plt

data = {

    '数学': [85, 90, 78, 92, 87, 130, 88, 95, 72, 150],

    '物理': [72, 85, 90, 68, 82, 95, 78, 120, 65, 88],

    '化学': [88, 92, 85, 78, 95, 102, 82, 78, 115, 90]

}

df = pd.DataFrame(data)

(2)基于3σ原则定义函数

def sigma_rule_outliers(df):

outliers_mask = pd.DataFrame(index=df.index, columns=df.columns)

#创建一个与原始df具有相同索引和列名的空DataFrame,所有单元格值被填充为False

    for col in df.columns:

        mean = df[col].mean()

        std = df[col].std()

        lower = mean - 3*std

        upper = mean + 3*std

outliers_mask[col] = ~df[col].between(lower, upper)

     return outliers_mask

(3)基于箱线图定义函数(IQR方法)

def iqr_rule_outliers(df):

    outliers_mask = pd.DataFrame(index=df.index, columns=df.columns)

    for col in df.columns:

        Q1 = df[col].quantile(0.25)

        Q3 = df[col].quantile(0.75)

        IQR = Q3 - Q1

        lower = Q1 - 1.5*IQR

        upper = Q3 + 1.5*IQR

        outliers_mask[col] = ~df[col].between(lower, upper)

    return outliers_mask

(4)检测并处理异常值

--检测异常值:

sigma_outliers = sigma_rule_outliers(df)

iqr_outliers = iqr_rule_outliers(df)

print("\n3σ原则检测到的异常值位置:")

print(sigma_outliers)

print("\n箱线图(IQR)方法检测到的异常值位置:")

print(iqr_outliers)

--处理异常值(替换为中位数):

def replace_outliers(df, outliers_mask):

    df_clean = df.copy( ) 

    for col in df.columns:

        median = df[col].median()

        df_clean[col] = df_clean[col].mask(outliers_mask[col], median)

    return df_clean

# 使用3σ原则处理

df_sigma_clean = replace_outliers(df, sigma_outliers)

# 使用IQR方法处理

df_iqr_clean = replace_outliers(df, iqr_outliers)

print("\n3σ原则处理后的数据:")

print(df_sigma_clean)

print("\nIQR方法处理后的数据:")

print(df_iqr_clean)

(5)建议

数据分布接近正态时:优先使用3σ原则

数据分布未知或偏态时:使用IQR方法

重要决策时:两种方法结合使用,人工复核异常值

http://www.dtcms.com/wzjs/116144.html

相关文章:

  • 企业网站后台管理模板建网站免费
  • 营销网站定制的优势最新新闻热点事件2024
  • wordpress媒体图片压缩比seo文章生成器
  • 温州专业微网站制作价格营销策划案的模板
  • 全国网站设计公司整合营销案例
  • 音乐网站建站网络营销案例分析
  • b2b商贸网站系统百度地图人工电话
  • 旅游网站建设的摘要seo综合排名优化
  • 宠物网站建设策划报告优化疫情防控
  • 企业网站设计有哪些新功能关键词排名点击软件工具
  • 网站管理系统制作免费seo视频教程
  • 南昌市公司网站建设门户网站
  • 东营区政府采购网官网网站优化排名易下拉软件
  • 网站开发排名深圳全网营销系统
  • 网站图片 原则引流用什么话术更吸引人
  • 广西南宁房产网站建设免费行情软件网站大全
  • 大连企业做网站seo诊断
  • 网页设计考试seo的形式有哪些
  • 于飞网站开发软文案例
  • 我要自学网网页制作视频教程天津网络优化推广公司
  • wordpress如何建站群武汉搜索引擎营销
  • 模板网站代理百度搜索关键词排名查询
  • 什么是网络营销型网站亚马逊的免费网站
  • wordpress魔板成都网站优化seo
  • 设计前沿的网站口碑营销案例
  • 小型网站设计seo提供服务
  • 网站开发如何挣钱广西南宁做网站的公司
  • wed网站接广告推广的平台
  • 上海工程建设信息网站西地那非片吃了能延时多久
  • dede网站如何换源码今日十大头条新闻