各位大佬好 ,这里是阿川的博客 , 祝您变得更强
个人主页:在线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类方法
- 专门针对Series 进行的方法
清洗
- 列和行相反
- 转置 .T
- 对列进行拆分
- split 可以指定分隔符 进行拆分
- str.split 对元素进行拆分
- 参数 expand=True 表示将分割后结果 单独用Series表示
- str.split 对元素进行拆分
- split 可以指定分隔符 进行拆分
- 将不同列合并成一列
- str.cat
- sep参数 以什么分隔符合并
- 将宽数据转化成长数据
- melt
- id_vars 表示不动原先的列
- 对行进行拆分
- 拆解 出更多的行
- explode 将列中的元素 拆分成更多行
- 适用 于列表类型
- 若列中元素 为字符串类型 ,则用eval 转化成列表类型
- explode 将列中的元素 拆分成更多行
- 拆解 出更多的行
清洗脏数据
对内容上(即脏数据)进行清洗:
- 丢失数据
loc 对某个缺失值处理
fillna 对缺失值处理
- dropna 自动找行缺失值且自动删除
- 重复数据
- drop_duplicates 删除 重复 的第2个数据
- subset 参数 指定列
- keep 进行指定保留
- drop_duplicates 删除 重复 的第2个数据
- 错误/不一致数据
- replace 对值 进行替换
元素类型转换
不同的DataFrame元素类型 可能不同
- astype 更改类型
- 数据有两种元素类型
- 分类数据
- 例如 奖牌 金银铜三种 可能
- category 分类数据类型 为 后面虚拟变量 作铺垫
- 由于 category非pandas库 中的类型,所以说要更改类型为category,需要 用字符串
- category 分类数据类型 为 后面虚拟变量 作铺垫
- 数值数据
- 例如 0~1区间有很多数值
保存数据
- to_csv 保存格式为csv
- index=False 参数 表示自动忽略索引
好的,到此为止啦,祝您变得更强
道阻且长 行则将至 |
---|
个人主页:在线OJ的阿川大佬的支持和鼓励,将是我成长路上最大的动力