大数据分析实践 | pandas数据质量分析

news2024/11/18 3:32:53

文章目录

  • 📚数据质量评估的五个维度
  • 📚口袋妖怪数据质量分析
    • 🐇导入库和数据
    • 🐇检查数据
    • 🐇缺失值分析
    • 🐇重复值检测
    • 🐇异常值检测

📚数据质量评估的五个维度

在这里插入图片描述

  • Coherent: without semantic errors or contradictory data between attributes of an object
  • Correct: the extent to which data correctly portrays reality
  • Completeness: without missing (null) values in table fields
  • Currency: the degree to which data is up-to-date
  • Consistency: consistent data values for an entity between different tables

在这里插入图片描述

📚口袋妖怪数据质量分析

🐇导入库和数据

import pandas as pd
import matplotlib.pyplot as plt
import warnings
warnings.filterwarnings('ignore')   #忽略警告
plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号
url = r'./data/Pokemon.csv'
data = pd.DataFrame(pd.read_csv(url))  #打开文件,读取数据

🐇检查数据

# 输出前五行数据
print('前五行数据:')
print(data.head(5))

在这里插入图片描述


# 输出最后三行数据
print('后三行数据')
print(data.tail(3))

在这里插入图片描述

  • 删除后两行 :data = data.iloc[:-2]

# 查看列名
print('列名:',data.columns)

在这里插入图片描述

# 查看行数与列数
print('行数与列数:',data.shape)

在这里插入图片描述

# 展示index,datatype和memory相关信息
print(data.info())

在这里插入图片描述

🐇缺失值分析

raw, column = data.shape  
if None:
    num = data[col].isnull().sum().sort_values()
else:
    num = data.isnull().sum().sort_values() 
print(None, r'缺失数')
print(num)  
print(None, r'缺失比例')
print(num/raw)

在这里插入图片描述
在这里插入图片描述

  • 将所有缺失值填充为“null”:data = data.fillna("null")

🐇重复值检测

主要针对#

# 检查 'id' 列是否有重复值
duplicate_ids = data.duplicated('#')
# 获取所有具有重复 id 的行
duplicate_rows = data[duplicate_ids]
# 打印具有重复 id 的行
print("具有重复 id 的行:")
print(duplicate_rows)

在这里插入图片描述

  • 对于 # 重复的妖怪只保留第一条记录:data = data.drop_duplicates(['#'],keep='first')

🐇异常值检测

  • 离群值
    data['Attack'] = data['Attack'].astype(float)
    data['Defense'] = data['Defense'].astype(float)
    data['Sp. Atk'] = data['Sp. Atk'].astype(float)
    data['Sp. Def'] = data['Sp. Def'].astype(float)
    data['Speed'] = data['Speed'].astype(float)
    data.boxplot(column=['Attack','Defense','Sp. Atk','Sp. Def','Speed'])
    plt.show()
    
    在这里插入图片描述

  • 检查 Generation列是否存在非数字值

    non_numeric_generation = pd.to_numeric(data['Generation'], errors='coerce').isna()
    print(data[non_numeric_generation])
    

    在这里插入图片描述

    • data = data[~non_numeric_generation]

  • 检查 Legendary列除了TRUE和FALSE之外的值

    filtered_data = data[~data['Legendary'].isin(['TRUE', 'FALSE'])]
    print(filtered_data)
    

    在这里插入图片描述

    • data = data.drop(filtered_data.index)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1117608.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Jetson nano 安装Ubuntu20.04系统

一、下载Ubuntu20.04镜像 下载地址:点击 二、格式化SD卡 (1)工具:SDFormatter (2)工具下载-百度网盘: 链接:https://pan.baidu.com/s/1DcwsGzmqrWwFmzpCV7VCyA 提取码&#xff1a…

【LeetCode】62. 不同路径

1 问题 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。 问总共有多少条不同的路径&#xff1f…

【Python】13.模块

目录 1. 模块化(module)程序设计理念1.1 模块和包概念的进化史1.2 标准库模块(standard library)1.3 为什么需要模块化编程1.4 模块化编程的流程1.5 模块的API 和功能描述要点1.6 模块的创建和测试代码1.7 模块文档字符串和API 设计 2. 模块的导入2.1 import 语句导入2.2 from……

Spark--经典SQL50题

目录 连接数据库准备工作 1、查询"01"课程比"02"课程成绩高的学生的信息及课程分数 2、查询"01"课程比"02"课程成绩低的学生的信息及课程分数 3、查询平均成绩大于等于60分的同学的学生编号和学生姓名和平均成绩 4、查询平均成绩…

ZCU106+ADRV9371+CPRO33-30.72+6 dB 衰减

文章目录 一、ZYNQ 平台二、ADRV9371三、CPRO33-30.72四、衰减器 一、ZYNQ 平台 之后使用 Zynq UltraScale MPSoC ZCU106,XCZU7EV 器件配备四核 ARM Cortex™-A53 应用处理器、双核 Cortex-R5 实时处理器、Mali™-400 MP2 图形处理单元、支持 4KP60 的 H.264/H.265…

SystemVerilog学习(2)——数据类型

一、概述 和Verilog相比,SV提供了很多改进的数据结构。它们具有如下的优点: 双状态数据类型:更好的性能,更低的内存消耗队列、动态和关联数组:减少内存消耗,自带搜索和分类功能类和结构:支持抽…

div透明模糊背景-渐变背景

background: rgba(245, 246, 246, 0.5) !important;-webkit-backdrop-filter: blur(13px);backdrop-filter: blur(13px);-webkit-transition: all 0.2s;transition: all 0.2s; 渐变 上到下 background: linear-gradient(#E7E7F1,#ffffff); 透明度渐变 上到下 background: lin…

rhcsa-8

rha off 状态下 输入virt-manager 先选node1;然后选倒数第二个含console的 1.配置网络设置 num [可以打印出nmcli]地址配置工具:nmcli W 可以打印出网卡链接的字符串 manu [打印出manual]手册 ipv4.方法手册-IP地址-网关-dns ip a s 在虚拟机上查看过…

前端 js 之 this 的绑定规则 04

嘿,加油😍 文章目录 一、this?二、this 的指向三、默认绑定(独立函数调用)四、隐式绑定五、显式绑定 (apply call bind)六、new绑定 (后面会详细再补充)七、apply call bind 区别八、内置函数的绑定思考九…

共谋工业3D视觉发展,深眸科技以自研解决方案拓宽场景应用边界

随着中国工业领域自动化程度逐渐攀升,“机器换人”这一需求进一步提升。在传统2D工业视觉易受环境光干扰、无法进一步获取物体深度信息的限制条件下,工业3D视觉凭借着更强的空间和深度感知能力,以及通过点云数据获取物体距离和三维坐标信息的…

ERR_PNPM_LINKING_FAILED Error: EPERM: operation not permitted, rename

webstorm终端pnpm报错  ERR_PNPM_LINKING_FAILED  Error: EPERM: operation not permitted, rename ’ 报错原因:powershell权限不够 解决办法:提升权限/在文件打开Powershell安装依赖

『C语言进阶』字符函数和内存函数(1)

🔥博客主页: 小羊失眠啦. 🔖系列专栏: C语言、Linux、Cpolar ❤️感谢大家点赞👍收藏⭐评论✍️ 前言 C语言中对字符和字符串的处理很是频繁,但是C语言本身是没有字符串类型的,字符串通常放在常…

【python】机器学习-K-近邻(KNN)算法

目录 一 . K-近邻算法(KNN)概述 二、KNN算法实现 三、 MATLAB实现 四、 实战 一 . K-近邻算法(KNN)概述 K-近邻算法(KNN)是一种基本的分类算法,它通过计算数据点之间的距离来进行分类。在…

【CSS】全局滚动条样式设置

直接在 App.vue 全局文件下设置滚动条样式: ::-webkit-scrollbar {width: 5px;position: absolute; } ::-webkit-scrollbar-thumb {background: #1890ff; } ::-webkit-scrollbar-track {background: #ddd; }

力扣每日一题51:N皇后问题

题目描述: 按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一个整数 n ,返回所有不同的 n 皇后问…

【51单片机外部中断控制流水灯转向】2023-10-21

缘由单片机不会搞 原理都清晰合一块成傻杯了 各位爷 用keil Vison5 还有Proteus8仿真图给出一下吧_嵌入式-CSDN问答 #include <reg52.h> unsigned char Js0; bit k0; void main() {//缘由unsigned char ls0; EA1;//总中断允许EX01;//允许外部中断0中断TH0(65536-50000)…

mysql优化之explain详解

mysql的explain&#xff08;执行计划&#xff09;用于解释sql的执行的过程&#xff0c;然后把sql的执行过程用一张表格表示出来&#xff0c;它并不真正的执行sql&#xff0c;如下图。explain能够为我们优化sql提供很好参考作用。 下面我来看下执行计划表中各个字段是什么意思 i…

【Linux】kill 命令使用

经常用kill -9 XXX 。一直在kill&#xff0c;除了kill -9 -15 &#xff0c;还能做什么&#xff1f;今天咱们一起学习一下。 kill 命令用于删除执行中的程序或工作。 kill命令 -Linux手册页 命令选项及作用 执行令 man kill 执行命令结果 参数 -l 信号&#xff0c;若果…

【吞噬星空】又被骂,罗峰杀人目无法纪,但官方留后手,增加审判戏份

Hello,小伙伴们&#xff0c;我是小郑继续为大家深度解析国漫吞噬星空资讯。 吞噬星空动画中&#xff0c;罗峰复仇的戏份&#xff0c;简直是帅翻了&#xff0c;尤其是秒杀阿特金三大巨头&#xff0c;让人看的也是相当的解气&#xff0c;相当的爽&#xff0c;一点都不拖沓&#x…

有什么站内搜索引擎优化的方法?今天跟大家分享!

在你的网站上安装站内搜索引擎对于提升用户体验和增加互动至关重要。在今天快节奏的数字世界中&#xff0c;用户希望能够快速、轻松地找到信息。通过提供站内搜索引擎&#xff0c;用户能够轻松浏览你的网站&#xff0c;帮助他们找到他们正在寻找的具体信息。接下来我将跟大家介…