python中如何使用pandas进行数据的预处理

目录

前言

一、数据加载与初步探索

1.1数据加载

输出结果如下

1.2初步探索

输出结果如下

二、数据清洗

2.1处理缺失值

2.2处理重复值

2.3处理异常值

​编辑

三、数据转换

3.1数据的类型转换

输出结果如下

3.2特征编码

输出结果如下

3.3特征缩放

输出结果如下

四、两张不同的数据表的数据预处理

五、标准化数据

5.1标准差标准化

5.2小数定标标准化

​编辑

输出效果如下

六、变换数据

6.1利用get—dummies函数进行哑变量处理

输出结果如下

七、离散化连续性数据

7.1等宽法

7.2等频法

7.3聚类分析法

八、箱线图分析

九、总结


前言

在现实生活中收集到的数据往往存在这数据不完整(有缺失值)、数据不一致、数据异常等情况,如果用这种异常数据进行建模分析,那么可能会影响建模的执行效率,甚至可能会造成分析结果出现偏差。如何对数据进行预处理,提高数据质量,是数据分析工作中常见的问题。本文章将给大家介绍数据合并、数据清洗、数据标准化和数据变化这四种预处理操作。

思维导图:

​​​​​​​

一、数据加载与初步探索

1.1数据加载

使用Pandas的read_系列函数(如read_csvread_excel等)可以轻松加载各种格式的数据集。加载出想要进行数据预处理的表格数据。

import pandas as pd  
  
# 加载CSV文件  
data = pd.read_csv('data.csv')  
  
# 查看前5行数据  
print(data.head())  
  
# 查看数据集的形状(行数和列数)  
print(data.shape)
输出结果如下

1.2初步探索

使用info()方法查看数据集的基本信息,如数据类型、缺失值等。

print(data.info())
输出结果如下

二、数据清洗

清理加载出来的异常值数据,以下分三种情况

第一种情况:当数据中有出现缺失值的情况,可以使用2.1来解决

2.1处理缺失值

  1. 使用dropna()方法删除包含缺失值的行或列。

  2. 使用fillna()方法填充缺失值,可以指定填充值或使用列的平均值、中位数等。

# 删除所有包含缺失值的行  
data_clean = data.dropna()  
  
# 使用列的平均值填充缺失值  
data_clean['column_name'].fillna(data['column_name'].mean(), inplace=True)

输出结果如下

第二种情况:当数据中出现重复值时可以使用2.2

2.2处理重复值

使用duplicated()drop_duplicates()方法识别和处理重复值。

# 查找重复行  
duplicates = data[data.duplicated()]  
  
# 删除重复行  
data_unique = data.drop_duplicates()

输出结果如下

第三种情况:当数据中出现异常值(不同于同列或同行的数据类型)时,可以使用2.3

2.3处理异常值

使用IQR(四分位距)等方法识别异常值,并视情况选择删除或替换。

# 计算IQR并识别异常值  
Q1 = data['column_name'].quantile(0.25)  
Q3 = data['column_name'].quantile(0.75)  
IQR = Q3 - Q1  
lower_limit = Q1 - 1.5 * IQR  
upper_limit = Q3 + 1.5 * IQR  
outliers = data[(data['column_name'] < lower_limit) | (data['column_name'] > upper_limit)]  
  
# 处理异常值(如删除&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值