首页 > 解决方案 > 如何标准化具有一定均值和标准差值的数据

问题描述

如何标准化具有特定均值和标准差值的数据集?

我知道存在类似的包,sklearn.preprocessing.StandardScaler但这个包只允许我们使用数据集自己的平均值和标准差值来标准化数据集。如果我想使用自己指定的均值和标准差值对数据集进行标准化怎么办?

我可以使用 Python 中的包吗?否则,我能想到的一种方法是为每个特征手动执行此操作(即(X-mean)/(stddev),对于数据集中的每个特征,其中mean=我自己指定的平均值,stddev=我自己指定的标准偏差值)。

提前致谢。

标签: pythonscikit-learnpreprocessorstandardized

解决方案


sklearn.preprocessing.StandardScaler 存在的原因是用于按需数据机器学习等。它用于管道。它确实可以自己工作,但那是在 tac 上使用污泥锤。您描述的方式是根据您自己的参数重新调整数据的唯一方法。我唯一的建议是使用数组;因为数组会自动将它们的操作投射到它们的所有条目上,所以代码看起来更好。

import numpy

data = numpy.array([1,2,3,34,2,2,3,43,4,3,2,3,4,4,5,56,6,43,32,2,2])

#Custom mean and std.
new_data = (data-10)/5

#Using the array's mean and std. 
new_data = (data-data.mean())/data.std()

推荐阅读