大数据体系知识学习(三):数据清洗_箱线图的概念以及代码实现

简介: 这篇文章介绍了如何使用Python中的matplotlib和numpy库来创建箱线图,以检测和处理数据集中的异常值。

箱线图介绍

箱线图通过绘制数据的中位数、四分位数、最大值和最小值等信息,可以帮助检测数据中的异常值。在箱线图中,超出1.5倍四分位距的数据点被视为异常值。在这里插入图片描述

箱线图代码

这段代码主要进行了以下几个操作:

  • 创建一个包含异常值的数据集。
  • 绘制这个数据集的箱线图。
  • 计算箱线图中的异常值。
  • 删除异常值。
  • 可视化删除异常值后的数据,并标出异常值。
  • 将异常值存入数组并打印出来。
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

# 创建一个包含异常值的数据集
data = np.concatenate((np.random.normal(10, 2, 100), [20, 25, 30, 35, 40]))

# 绘制箱线图
fig, ax = plt.subplots()
ax.boxplot(data)

# 计算箱线图中的异常值
q1, q3 = np.percentile(data, [25, 75])
iqr = q3 - q1
low_threshold = q1 - 1.5 * iqr
high_threshold = q3 + 1.5 * iqr
outliers = data[(data < low_threshold) | (data > high_threshold)]

# 删除异常值
data = data[(data >= low_threshold) & (data <= high_threshold)]

# 可视化数据,标出异常值
fig, ax = plt.subplots()
ax.boxplot(data, showfliers=True, flierprops={'marker': 'o', 'markerfacecolor': 'red', 'markersize': 8})
ax.scatter(np.ones(len(outliers)), outliers, marker='o', color='red')

# 可视化删除后的数据
fig, ax = plt.subplots()
ax.boxplot(data)

# 将异常值存入数组并打印
removed_outliers = outliers.tolist()
print("Removed Outliers:", removed_outliers)

plt.show()

箱线图结果图

  • 原数据
    在这里插入图片描述
  • 标记后数据
    在这里插入图片描述
  • 剔除后数据
    在这里插入图片描述
相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
目录
相关文章
|
9月前
|
负载均衡 算法 关系型数据库
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
本文聚焦 MySQL 集群架构中的负载均衡算法,阐述其重要性。详细介绍轮询、加权轮询、最少连接、加权最少连接、随机、源地址哈希等常用算法,分析各自优缺点及适用场景。并提供 Java 语言代码实现示例,助力直观理解。文章结构清晰,语言通俗易懂,对理解和应用负载均衡算法具有实用价值和参考价值。
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
|
5月前
|
存储 并行计算 算法
【动态多目标优化算法】基于自适应启动策略的混合交叉动态约束多目标优化算法(MC-DCMOEA)求解CEC2023研究(Matlab代码实现)
【动态多目标优化算法】基于自适应启动策略的混合交叉动态约束多目标优化算法(MC-DCMOEA)求解CEC2023研究(Matlab代码实现)
264 4
|
8月前
|
数据采集 搜索推荐 算法
Java 大视界 -- Java 大数据在智能教育学习社区用户互动分析与社区活跃度提升中的应用(274)
本文系统阐述 Java 大数据技术在智能教育学习社区中的深度应用,涵盖数据采集架构、核心分析算法、活跃度提升策略及前沿技术探索,为教育数字化转型提供完整技术解决方案。
|
8月前
|
机器学习/深度学习 数据挖掘 大数据
大数据集特征工程实践:将54万样本预测误差降低68%的技术路径与代码实现详解
本文通过实际案例演示特征工程在回归任务中的应用效果,重点分析包含数值型、分类型和时间序列特征的大规模表格数据集的处理方法。
298 0
大数据集特征工程实践:将54万样本预测误差降低68%的技术路径与代码实现详解
|
分布式计算 Java MaxCompute
ODPS MR节点跑graph连通分量计算代码报错java heap space如何解决
任务启动命令:jar -resources odps-graph-connect-family-2.0-SNAPSHOT.jar -classpath ./odps-graph-connect-family-2.0-SNAPSHOT.jar ConnectFamily 若是设置参数该如何设置
|
分布式计算 Java 开发工具
阿里云MaxCompute-XGBoost on Spark 极限梯度提升算法的分布式训练与模型持久化oss的实现与代码浅析
本文介绍了XGBoost在MaxCompute+OSS架构下模型持久化遇到的问题及其解决方案。首先简要介绍了XGBoost的特点和应用场景,随后详细描述了客户在将XGBoost on Spark任务从HDFS迁移到OSS时遇到的异常情况。通过分析异常堆栈和源代码,发现使用的`nativeBooster.saveModel`方法不支持OSS路径,而使用`write.overwrite().save`方法则能成功保存模型。最后提供了完整的Scala代码示例、Maven配置和提交命令,帮助用户顺利迁移模型存储路径。
|
机器学习/深度学习 XML 分布式计算
大数据的概念
【10月更文挑战第16天】
794 4
|
数据采集 机器学习/深度学习 算法
大数据中数据清洗
【10月更文挑战第19天】
1067 2
|
数据采集 算法 大数据
大数据中数据清洗 (Data Cleaning)
【10月更文挑战第17天】
1327 1
|
存储 SQL 分布式计算
大数据学习
【10月更文挑战第15天】
350 1