D2DL笔记_2
数据预处理部分:
机器学习/深度学习中,文本类型训练数据的输入通常需要进行一定的预处理,统一化之后可以更方便更高效地对模型使用现有数据进行训练,而这些文本类型的数据通常以.csv的格式出现。
下面做一个对csv格式文件的数据预处理。
首先生成一个.csv文件(,csv,comma-separated values字符分隔值文件是纯文本存储表格数据的一类文件):
读取.csv文件最方便的方法是通过pandas.read_csv(),没有pandas的话需要先安装:
读取的效果如下:
当然jupyter中可以不用print函数打印,对于pandas read 的data,jupyter会默认以html的格式打印,比print函数打印出来的更好看一点:
为处理缺失的数据,通常考虑删除和插值,删除的话总会有现有信息被丢弃,产生损失,可以采取插值的方法,取已有数据的mean平均值,对缺失数据插补:
这里jupyter给了一个warning,说Alley列不是数值,不能取平均插值,也不建议删减全NA的列,所以它不能对Alley列做操作,建议只选择可操作的列。
若只选择第一列给inputs,就不会警告:
那对Alley列,我们就不做处理了吗?显然是不能的,可以通过pandas.get_dummies(),对Alley列每种数据自动独立编码,Alley列目前有Pave和NA两种不同类型的值,那么编码只需要0和1就可以:
现在inputs和outputs里的所有元素都是数值类型的了,就可以将它们转换为张量:
这样就完成了导入.csv文件进行预处理再将其转换为张量的过程。