python数据预处理实例
时间: 2023-07-27 14:11:46 浏览: 68
以下是一个简单的 Python 数据预处理实例:
假设我们有一个名为“customers.csv”的客户数据集,其中包含客户姓名、年龄、性别、购买历史和信用分数等信息。我们想要对该数据集进行一些预处理,以便用于进一步的分析和建模。
1. 导入必要的库
```python
import pandas as pd
import numpy as np
```
2. 读取数据集
```python
data = pd.read_csv('customers.csv')
```
3. 检查数据质量
```python
# 查看前5行数据
data.head()
# 查看数据维度
data.shape
# 检查缺失值
data.isnull().sum()
# 检查重复值
data.duplicated().sum()
# 查看数据类型
data.dtypes
```
4. 处理缺失值
```python
# 删除缺失值
data.dropna(inplace=True)
# 填充缺失值
data.fillna(value=0, inplace=True)
```
5. 处理重复值
```python
# 删除重复值
data.drop_duplicates(inplace=True)
```
6. 处理离群值
```python
# 使用箱线图检测离群值
import seaborn as sns
sns.boxplot(x=data['age'])
# 删除离群值
Q1 = data['age'].quantile(0.25)
Q3 = data['age'].quantile(0.75)
IQR = Q3 - Q1
data = data[(data['age'] >= Q1 - 1.5*IQR) & (data['age'] <= Q3 + 1.5*IQR)]
```
7. 处理数据类型
```python
# 转换数据类型
data['age'] = data['age'].astype('int')
data['credit_score'] = data['credit_score'].astype('float')
# 对分类变量进行编码
from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
data['gender'] = le.fit_transform(data['gender'])
```
8. 特征缩放
```python
# 使用 MinMaxScaler 进行特征缩放
from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler()
data[['age', 'credit_score']] = scaler.fit_transform(data[['age', 'credit_score']])
```
以上是一个简单的 Python 数据预处理实例,其中包括数据质量检查、缺失值处理、重复值处理、离群值处理、数据类型处理和特征缩放等常见的预处理步骤。