数据标准化处理疑问
标准化常使用的工具
1.使用 sklearn
库中的 StandardScaler
StandardScaler
是 scikit-learn
库中用于数据预处理的一个工具,它对每个特征进行标准化,使得特征的均值为0,标准差为1。这样做可以确保每个特征在PCA或其他算法中具有相同的重要性,因为算法通常对特征的尺度敏感。
StandardScaler
使用的公式如下:
对于每个特征中的每个数据点 x
,标准化后的值
x_std
计算方法为: 1
x_std = (x - mean) / std
mean
是该特征所有数据点的均值,std
是该特征所有数据点的标准差。
StandardScaler
首先计算整个数据集的均值和标准差,然后使用这些参数对每个特征的每个数据点进行标准化。这个过程通过
fit
方法完成,然后 transform
方法应用于原始数据,以生成标准化后的数据。
在实际应用中,fit_transform
方法通常一起使用,因为它首先计算均值和标准差(fit),然后使用这些参数来转换数据(transform)。这样可以确保数据的标准化是基于整个数据集的,而不是基于数据集的一部分。
转化后的数值,均值为0,标准差为1
1 |
|

2.自己定义公式进行计算 1
2S=(MVdata-MVdata.mean())/MVdata.std()
print("标准化处理后的数据:\n", round(S,4))
这里发现会有一点的误差,很奇怪,看公式应该是一样的,不知道为什么
对比之后我个人认为还是第二种方法计算出来的结果相对准确一点
后面有时间再详细测试一下为什么吧
参考
https://www.cnblogs.com/chentiao/p/17203643.html
http://t.csdnimg.cn/wUqmh
上面两篇还未认真学习,先放一下