1.载入各种数据科学以及可视化库
1.1 使用pycharm配合anaconda使用,因此在有未安装包时需要下载导入。实则为给anaconda下载为安装包。参考文档如下:
关于anaconda 导入第三方工具包的方法
1.2 执行一步看一下,会有效的方便你进行理解函数并进行操作
1.3
#导入各种所需要的包
warnings.filterwarnings('ignore')
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import missingno as msno
2.载入数据
2.1 参考代码:
#载入数据并查看
Train_data = pd.read_csv('train.csv', sep=' ')
Test_data = pd.read_csv('testA.csv', sep=' ')
Train_data.head().append(Train_data.tail())
Train_data.shape
3. 总览数据概况
3.1 所用函数:
1)通过describe()来熟悉数据的相关统计量:
Train_data.describe()
Test_data.describe()
2) 通过info()来熟悉数据类型(在下文中info函数还可以用来检测异常值):
Train_data.info()
Test_data.info()
3.2
引用自caow_1大神的总结笔记:
Pandas中describe()主要分析数据的基本统计量:
如:
count:一列的元素个数; mean:一列数据的平均值;
std:一列数据的均方差;(方差的算术平方根,反映一个数据集的离散程度:越大,数据间的差异越大,数据集中数据的离散程度越高;越小,数据间的大小差异越小,数据集中的数据离散程度越低)
min:一列数据中的最小值; max:一列数中的最大值; 25%:一列数据中,前 25% 的数据的平均值; 50%:一列数据中,前 50%
的数据的平均值; 75%:一列数据中,前 75% 的数据的平均值;
上述信息主要是瞬间掌握数据的大概的范围以及每个值的异常值的判断,比如有的时候会发现999 9999 -1
等值这些其实都是nan的另外一种表达方式。
4.判断数据缺失和异常
4.1 所用函数:
1)查看nan存在情况:
## 1) 查看每列的存在nan情况:
Train_data.isnull().sum()
Test_data.isnull().sum()
2)可视化:
# nan可视化
missing = Train_data.isnull().sum()
missing = missing[missing > 0]
missing.sort_values(inplace=True)
missing.plot.bar()
3)查看缺省值:
msno.matrix(Train_data.sample(250))
msno.bar(Train_data.sample(1000))
5.了解预测值的分布
- 总体分布概况(无界约翰逊分布等)
- 查看skewness and kurtosis
- 查看预测值的具体频数
6. 特征分为
- 类别特征和数字特征,并对类别特征查看unique分布
7. 数字特征分析
- 类别特征分析
- 用pandas_profiling生成数据报告