大数据 数据清洗与结构化存储 处理清洗数据

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Car 情报局
任务1 处理数据缺失
• 方法和实现
(2)删除不完整的列
1)删除一整列都为NA的列 data.drop(axis=1, how='all')
2)删除任何包含空值的列 data.drop(axis=1. how='any')
3)同理可以像行的操作一样,使用threshold 和 subset
运行前
0 Color 1 Color 2 Color 3 Color 5 Color
运行后
Car 情报局
任务1 处理数据缺失
• 方法和实现
(2)删除不完整的行
2)删除一整行的值都为NA的数据 data.dropna(how='all')
3)有条件删除 data.drop(thresh=5) data.dropna(subset=['title_year'])
• 数据缺失处理的方法
(1)为缺失数据赋值 (2)去掉/删除缺失数据行 (3)去掉/删除缺失率高的列
Car 情报局
任务1 处理数据缺失
• 方法和实现
(1)为缺失数据赋值
0
Color
1
Color
2
Color
3
Color
4
NaN
5
Color
data = pd.read_csv("data/movie_metadata.csv") print(data['color'][:6]) # 原始数据 data.color = data.color.fillna('colorA') # 利用fillna函数将空值改为colorA print(data['color'][:6]) # 显示修改后的数据
Car 情报局
任务2 规范化数据
Car 情报局
1. 数据不规范的原因
1)在数据转化时数据格式错误:比如原本为float类型的数据,在转过程中变为了字符 串类型。 2)错别字:在用户输入的时候,一时大意写出来错别字。 3)英文单词大小写不统一。 4)空格:输入了额外的空格。 5)非ASCII字符。
2. 数据不规范的处理方式
② 去除空格 data['movie_title'].str.strip()
③ 非ASCII字符 data['director_name ].replace({r'[^\x00-\x7F]+': ''}, regex=True, inplace=True)
Car 情报局
任务3 处理数据表结构错误
使用数据
70kgs 154.89lbs
78 198.658lbs 189lbs 56kgs 78kgs 189lbs 45kgs
72 69
71
-
-
-
-
-
-
79 72
-
-
-
-
-
-
-
-
-
-
78 76
75
-
-
-
-来自百度文库
-
-
-
-
-
85
84
76
65
69
72
-
-
69
75
68
75
72
71
78
75
-
-
-
68
75
72
92
95
87
Car 情报局
1)格式转化:把数据作类型转换。 2)必要转换:针对不同的情况进行相应转换。如:英语单词做大小写转换。
任务2 规范化数据
Car 情报局
3. 数据不规范的处理方式实现
1)格式转化 data = pd.read_csv("data/movie_metadata.csv", dtype={'director_name': str}) print(data['director_name'].head()) print(data['director_name'][2]) # 结果:Sam Mendes print(type(data['director_name'][2])) # 结果:<class 'str'>
1
Mickéy Mousé
2
Donald Duck
3
Mini Mouse
4
Scrooge McDuck
5
Pink Panther
6
Huey McDuck
7
Dewey McDuck
8
Scööpy Doo
9
Huey McDuck
10
Louie McDuck
56 34 16 78kgs 54 52 19 32 52 12
Car 情报局
任务1 处理数据缺失
• 方法和实现
(2)删除不完整的行
1)删除包含任意NaN的行 print(data['color'][:6]) # 原始数据 df = data.dropna() print(df['color'][:6]) # 删除后的数据
0 Color 1 Color 2 Color 3 Color 4 NaN 5 Color
任务2 规范化数据
3. 数据不规范的处理方式实现
2)必要变换
① 英文单词大小写变换 data = pd.read_csv("data/movie_metadata.csv") print(data.color.head().str.upper()) # 调用.upper方法,转换为大写 # 同样调用lower方法即可全部转换为小写 print(data.color.str.upper().head())
任务3 处理数据表结构错误
1. 存在问题
1)没有列头 2)一个列有多个参数 3)列数据的单位不统一 4)有些列头应该是数据,而不是列名 5)列名中英文变换
Car 情报局
任务3 处理数据表结构错误
2. 数据表结构错误的清洗方法
1)添加或者拆分列头 2)单位转换 3)重复行 4)列头行列转换 5)列头中英文转换
Car 情报局
任务3 处理数据表结构错误
Car 情报局
3. 数据表结构错误的清洗方法实现
(1)没有列头
import pandas as pd column_names = ['id', 'name', 'age', 'weight', 'm0006', 'm0612', 'm1218', data = pd.read_csv("data/patient_heart_rate.csv", names=column_names) print(data.head())
Car 情报局
《大数据平台应用》
项目5 数据清洗与结构化存储 之 清洗数据
教学环节
1 任务1 处理数据缺失 2 任务2 规范化数据 3 任务3 处理数据表结构错误 4 任务4 处理日期数据错误
Car 情报局
任务1 处理数据缺失
• 数据缺失产生的原因
(1)在数据填写时漏填、错填、没有填写 (2)填写的数据时错误数据无法使用 (3)数据计算错误导致数据错误
相关文档
最新文档