#加载所需数据库
import numpy as np
import pandas as pd
#加载数据
df = pd.read_csv(‘C:/Users/L/Desktop/da_data/part 1/train.csv’)
df.head()
一.缺失值观察与处理
1.缺失值观察
- df.info()
dataframe 使用 series不可使用 - df.isnull().sum()
2.缺失值处理
- 删除 df.dropna()
- 填充 df.fillna()
二.重复值观察与处理
1.重复值观察
- df.duplicated()
2.重复值处理 - df.drop_duplicates()
df.drop_duplicates().head()
#保存清洗后的数据
df.to_csv(‘C:/Users/L/Desktop/da_data/part 1/test_clear.csv’)
特征观察与处理
数值型特征
- 连续
- 离散
文本型特征
数值型特征一般可以直接用于模型训练,为了模型稳定性会对连续变量进行离散化处理
文本型特征往往需要转换成数值型特征才能用于建模分析
1.对年龄进行分箱(离散化)处理
#将连续变量Age平均分箱成5个年龄段,并分别用类别变量12345表示
df[‘AgeBand’] = pd.cut(df[‘Age’],5,labels = [‘1’,‘2’,‘3’,‘4’,‘5’])
df.to_csv(‘C:/Users/L/Desktop/da_data/part 1/test_ave.csv’)
df.head()
#将连续变量Age按10% 30% 50% 70% 90%五个年龄阶段,并用分类变量12345表示
df[‘AgeBand’] = pd.qcut(df[‘Age’],[0,0.1,0.3,0.5,0.7,0.9],labels = [‘1’,‘2’,‘3’,‘4’,‘5’])
df.head()