学习目标:
- 学习如何对数据集整体概况进行分析,包括数据集的基本情况(缺失值,异常值)
- 学习了解变量间的相互关系、变量与预测值之间的存在关系
学习内容:
- 数据总体了解:
- 读取数据集并了解数据集大小,原始特征维度;
- 通过info熟悉数据类型;
- 粗略查看数据集中各特征基本统计量;
- 缺失值和唯一值:
- 查看数据缺失值情况
- 查看唯一值特征情况
- 深入数据-查看数据类型
- 类别型数据
- 数值型数据
- 离散数值型数据
- 连续数值型数据
- 数据间相关关系
- 特征和特征之间关系
- 特征和目标变量之间关系
学习笔记:
python部分了解数据:
利用python语言在读取数据的过程前,需要导入数据分析及可视化过程需要的库,再根据read_命令读取文件数据,要注意区分TSV和CSV文件的不同,不同的文件形式需要的命令不同;
比如TSV与CSV的区别:
从名称上即可知道,TSV是用制表符(Tab,'\t')作为字段值的分隔符;CSV是用半角逗号(',')作为字段值的分隔符;
为了读取部分数据我们也可以通过nrows读取需要的行向量的数据;
关于如何查看数据集的样本个数和原始特征维度输入命令data_文件名.shape和data_文件名.columns;
也可以通过data_文件名.info()了解数据类型,比如整型或者浮点型等;在总体粗略的查看数据集各个特征的一些基本统计量时我们用到data_文件名.describe()
缺失值和唯一值:
查看缺失值{print(f'there are {data_文件名.insull().any().sum()}columns in train dataset with missing values.')//这里有多少个特征值缺失
当我们具体查看缺失值和缺失率时
missing = data_文件名.isnull().sum()/len(data_文件名)
missing = missing[missing > 0]
missing.sort_values(inplace=True)
missing.plot.bar()
查看具有特征属性多少值的特征时:
one_value_fea = [col for col in data_文件名.columns if data_文件名[col].nunique() <= ?]
数据了解:
类别型数据:select_dtypes函数用法:DataFrame.select_dtypes(include=None, exclude=None) //include选取该类型;exclude:选取除该类型外的类型
数值型数据又分离散数值型变量和连续数值型变量:简单来说就是数值的分布是否符合正态分布,如果不符合取对数后看是否符合。【1】
非数值类别型变量分析:category_fea
用value_counts()等函数看了特征属性的分布
透视图pivot_table【2】
用pandas_profiling生成数据报告
import pandas_profiling
pfr = pandas_profiling.ProfileReport(data_train)
pfr.to_file("./example.html")
四、学习总结
task2主要学习通过python语言分析数据,了解特征工程的内容,在任何模型下都不能离开最本质的基本原则,对数据的处理是模型是否成功的最关键因素。这次学习最大的进步是对python有了更深一步的认识,在挖掘数据的时候有了方向;
反思:在利用python软件编程时还是有很多不会的地方,基本是通过给出的示例进行编程,还需要继续努力。而在数据挖掘这方面的能力有待提高,通过网络上的论文可以学习很多。