几种简单数据预处理方法的Python实现
数据科学、深度学习都离不开数据的准备与预处理。对于像我这样的新手而言,不仅算法需要花费许多时间来理解,数据预处理就消耗了不少的精力。在此特将近期遇到的几种准备数据的方法归类,并使用Python来处理它们。一可以深化对Python语言特性的理解,二也为所有人参考,能够少走弯路。
几个对于简化编码非常重要的语言特性与库方法:列表的切片,enumerate(),列表推导(List Comprehension),以及numpy库的numpy.zeros()、numpy.shape等。
近期学习Udacity深度学习基础课,把数据的准备分成了以下五种类型:
一.大向量分割成若干小向量
背景:切割训练集,使之适合于模型的输入 。使用List的切片
split_frac = 0.8 #训练集占80%
num_train = int(0.8*len(features))
train_x, val_x = features[:num_train], features[num_train:]
num_val = int(0.5*len(val_x)) #验证集与测试集各占剩余20%中的一半
val_x, test_x = val_x[:num_val], val_x[num_val:]