多维数据的归一化

本篇文章包括以下内容:
1、数据的升降维度
2、多维数据归一化思路
3、关于归一化的注意事项

1、数据升降维度:
首先我的数据集是一个100W*11的样式,我想用神经网络来对我的数据进行训练,个人规定15行数据为一个样本,且去除前两列和最后一列,所以我的一个样本shape应该是(1,15,9)的形式。这就涉及到数据的升维。
我的数据以csv形式保存,先读取csv

df_total = pd.read_csv("路径",sep=',',low_memory=False)

这样我们得到了一个dataframe,下一步我这里是进行了对数据的归一化,要注意的是:
1、dataframe不能直接归一化,数据的归一化要对ndarray进行
2、三维及以上数据不能直接归一化
所以下一步:

df_total = df_total.values #改成ndarray
sclar = MinMaxScaler(feature_range=(0,1),copy=True)  #范围规定为0~1
df_total = sclar.fit_transform(df_total[:,1:-1])  #取第2到倒数第2列

这样就对整个数据进行了归一化。
下一步将数据升维成我想要的形式。
这里要注意一点:
在升维的时候要保证数据个数是充足的,不要多不要少,否则会提示你的数据量不能够进行维度变换。

df_total = df_total[:1183890] #截取能完整升维的数据量,这里我的行数取到100多万
df_total = df_total.reshape((-1,15,9))

这样就升维成功,下一步各位就可以拿着一层一层的样本建立张量。

如果你的数据就是多维的,不妨现将维度降到2维再进行归一化。

你可能感兴趣的:(数据预处理,大数据,机器学习)