2 数据分析EDA

#2.3.1 载入各种数据科学以及可视化库:

    数据科学库 pandas、numpy、scipy;
    可视化库 matplotlib、seabon;
    其他;

#2.3.2 载入数据:

    载入训练集和测试集;
    简略观察数据(head()+shape);

扫描二维码关注公众号,回复: 10260715 查看本文章

#2.3.3 数据总览:

    通过describe()来熟悉数据的相关统计量
    通过info()来熟悉数据类型

#2.3.4 判断数据缺失和异常

    查看每列的存在nan情况
    异常值检测

#2.3.5 了解预测值的分布
# 1) 总体分布概况(无界约翰逊分布等)
# 2) 查看skewness and kurtosis

#2.3.6 特征分为类别特征和数字特征,并对类别特征查看unique分布
# 分离label即预测值
# 特征nunique分布

#2.3.7 数字特征分析
# 1) 相关性分析
# 2) 查看几个特征得 偏度和峰值
# 3) 每个数字特征得分布可视化
# 4) 数字特征相互之间的关系可视化
# 5) 多变量互相回归关系可视化
# 2.3.8 类别特征分析
# 1) unique分布
# 2) 类别特征箱形图可视化
# 3) 类别特征的小提琴图可视化
# 4) 类别特征的柱形图可视化
#  5) 类别特征的每个类别频数可视化(count_plot)


#2.3.9 用pandas_profiling生成数据报告


重要函数

分布情况查看
plt.figure(1); plt.title('Johnson SU')
sns.distplot(y, kde=False, fit=st.johnsonsu)
plt.figure(2); plt.title('Normal')
sns.distplot(y, kde=False, fit=st.norm)
plt.figure(3); plt.title('Log Normal')
sns.distplot(y, kde=False, fit=st.lognorm)


数据的偏度和峰度——df.skew()、df.kurt()https://www.cnblogs.com/wyy1480/p/10474046.html
Train_data.skew(), Train_data.kurt()
sns.distplot(Train_data.skew(),color='blue',axlabel ='Skewness')
sns.distplot(Train_data.kurt(),color='orange',axlabel ='Kurtness')


# 这个区别方式适用于没有直接label coding的数据
# 这里不适用,需要人为根据实际含义来区分
# 数字特征
# numeric_features = Train_data.select_dtypes(include=[np.number])
# numeric_features.columns
# # 类型特征
# categorical_features = Train_data.select_dtypes(include=[np.object])
# categorical_features.columns


#多变量之间的关系可视化,更多学习可参考很不错的文章 https://www.jianshu.com/p/6e18d21a4cad

发布了18 篇原创文章 · 获赞 1 · 访问量 1412

猜你喜欢

转载自blog.csdn.net/wjsjjss/article/details/105081949