数据清洗操作及众所周知【数据分析】

各位大佬好 ,这里是阿川的博客 , 祝您变得更强

个人主页:在线OJ的阿川

大佬的支持和鼓励,将是我成长路上最大的动力

阿川水平有限,如有错误,欢迎大佬指正

前面的 博客
数据分析---技术栈和开发环境搭建
数据分析---Numpy和Pandas库基本用法及实例

Python初阶
Python--语言基础与由来介绍
Python--注意事项
Python--语句与众所周知
数据清洗前 必看
数据分析---三前奏:获取/ 读取/ 评估数据

这是目录

  • 清洗乱数据
    • 基本操作
    • 清洗
  • 清洗脏数据
  • 元素类型转换
  • 保存数据

清洗乱数据

针对结构类乱数据

即不符合以下特征

基本操作

引入:

  • 基本上操作DataFrame的方法 ,一般是不改变 原始的DataFrame
  • Series和DataFrame 几乎是不可分割 Series组成了 DataFrame,数据分析中,有大量针对 DataFrame和Series进行的操作

须知道的:

  • 清洗索引和列名

    • set_index 重设索引

    • reset_index 重置索引

    • sort_index 对索引排序

    • rename index 重命名索引

    • rename columns 重命名列名

      • inplace = True 该参数表示在原先DataFrame基础上永久替换
    • drop 删除列或者索引

      • axis=0 删除行
      • axis=1 删除列
  • str类方法

清洗

  • 列和行相反
    • 转置 .T
  • 对列进行拆分
    • split 可以指定分隔符 进行拆分
      • str.split 对元素进行拆分
        • 参数 expand=True 表示将分割后结果 单独用Series表示
  • 将不同列合并成一列
    • str.cat
    • sep参数 以什么分隔符合并
  • 将宽数据转化成长数据
    • melt
    • id_vars 表示不动原先的列
  • 对行进行拆分
    • 拆解 出更多的行
      • explode 将列中的元素 拆分成更多行
        • 适用 于列表类型
      • 若列中元素 为字符串类型 ,则用eval 转化成列表类型

清洗脏数据

对内容上(即脏数据)进行清洗:

  • 丢失数据
    loc 对某个缺失值处理

fillna 对缺失值处理

  • dropna 自动找行缺失值且自动删除
  • 重复数据
    • drop_duplicates 删除 重复 的第2个数据
      • subset 参数 指定列
      • keep 进行指定保留
  • 错误/不一致数据
    • replace 对值 进行替换

元素类型转换

不同的DataFrame元素类型 可能不同

  • astype 更改类型
  • 数据有两种元素类型
    • 分类数据
    • 例如 奖牌 金银铜三种 可能
      • category 分类数据类型 为 后面虚拟变量 作铺垫
        • 由于 category非pandas库 中的类型,所以说要更改类型为category,需要 用字符串
  • 数值数据
    • 例如 0~1区间有很多数值

保存数据

  • to_csv 保存格式为csv
    • index=False 参数 表示自动忽略索引

好的,到此为止啦,祝您变得更强

道阻且长 行则将至

个人主页:在线OJ的阿川大佬的支持和鼓励,将是我成长路上最大的动力

相关推荐
维克兜率天1 小时前
【维克】复合型CTA:趋势+套利的双轮驱动
python·学习方法
伞伞悦读1 小时前
【第76期】两张3行表左连接变5行:主键、validate与未匹配排查完整教程
人工智能·python
用户8356290780512 小时前
使用 Python 在 Excel 中添加和自定义迷你图
后端·python
用户8356290780512 小时前
使用 Python 在 Excel 图表中添加趋势线与回归方程
后端·python
特立独行的猫A2 小时前
一份 Markdown 发十个平台:cspub 一稿多投
java·后端·python
深蓝AI2 小时前
HTTPX 超时 1 秒,接口为何还能跑 2.4 秒?
python
CyrusYiVPP3 小时前
哪个用户会再来买?RFM模型+plotly画出用户分层,数据分析实战第2期
人工智能·python
TDengine (老段)4 小时前
TDengine IDMP 十大实用功能(9)
大数据·数据库·人工智能·物联网·时序数据库·tdengine·idmp
叼烟扛炮4 小时前
Linux 学习笔记(五十八):IO 多路复用封神——epoll 底层原理揭秘
linux·运维·服务器·网络·笔记·学习·php
李帅5154 小时前
用 CPU 做发票识别:从 OCR 文本行到结构化明细表的 4 个硬骨头
python