可以用相关矩阵corr()探索哪些变量与因变量是有强相关关系的,再用sort_values()将数据从大到小排序,并配合使用plot()对数据进行可视化,让结果更加直观。相关性弱的变量对模型的训练并没有帮助,因此可以把相关性弱的变量删除,只保留强相关的变量。
train.corr()['fraud_reported'].sort_values(ascending = False).plot(kind='bar')
代码讲解:
train是数据集;
train.corr()调用相关矩阵的函数,生成相关矩阵;
train.corr()['fraud_reported']筛选其中的一列,也就是自变量与因变量的相关关系所在的那一列;
sort_values()是排序函数,sort_values()里不加参数 指的是从小到大排序;排序函数里面的ascending = False参数 指从大到小排序;
plot()是折线图,plot(kind='bar')指柱状图;
对train数据集连续用了3个方法,分别是:①corr()生成相关矩阵;②把所需的字段fraud_reported筛选出来后,用sort_values()函数进行排序;③用plot()生成柱状图;
运行结果:
图太小了,可以用figure()函数调整画布大小:
import matplotlib.pyplot as plt
plt.figure(figsize=(15,8))
代码讲解:
plt是包名的简写,在前面有import过;
figsize里面的两个数字代表宽度和高度,这里设置宽15高8;
运行结果:
可以发现,age、policy_annual_premium等几个特征与因变量的相关系数几乎为0,说明对结果的影响很小,可以进行删除处理。