我正在尝试实现一个使用PIMA数据集的论文。这是插补缺失值后的数据集:
Preg Glucose BP SkinThickness Insulin BMI Pedigree Age Outcome
0 1 148.0 72.000000 35.00000 155.548223 33.600000 0.627 50 1
1 1 85.0 66.000000 29.00000 155.548223 26.600000 0.351 31 0
2 1 183.0 64.000000 29.15342 155.548223 23.300000 0.672 32 1
3 1 89.0 66.000000 23.00000 94.000000 28.100000 0.167 21 0
4 0 137.0 40.000000 35.00000 168.000000 43.100000 2.288 33 1
5 1 116.0 74.000000 29.15342 155.548223 25.600000 0.201 30 0
说明:
df.describe()
Preg Glucose BP SkinThickness Insulin BMI Pedigree Age
count768.000000 768.000000 768.000000 768.000000 768.000000 768.000000 768.000000 768.000000
mean0.855469 121.686763 72.405184 29.153420 155.548223 32.457464 0.471876 33.240885
std 0.351857 30.435949 12.096346 8.790942 85.021108 6.875151 0.331329 11.760232
min 0.000000 44.000000 24.000000 7.000000 14.000000 18.200000 0.078000 21.000000
25% 1.000000 99.750000 64.000000 25.000000 121.500000 27.500000 0.243750 24.000000
50% 1.000000 117.000000 72.202592 29.153420 155.548223 32.400000 0.372500 29.000000
75% 1.000000 140.250000 80.000000 32.000000 155.548223 36.600000 0.626250 41.000000
max 1.000000 199.000000 122.000000 99.000000 846.000000 67.100000 2.420000 81.000000
本文对规范化的描述如下:
作为我们数据预处理的一部分,通过对数据集进行标准化,将原始数据值缩放到[0,1]值的小范围内。这将提高速度并降低运行时复杂性。使用Z分数,我们对我们的值集V进行归一化,以获得一组新的归一化值V',公式如下: V'=V-Y/Z 其中V'=新的标准化值,V=先前的值,Y=平均值,Z=标准偏差
z=scipy.stats.zscore(df)
但是当我尝试运行上面的代码时,得到的是负值和大于1的值,即不在[0,1]范围内
假设您的原始数据帧是df,并且没有无效的浮点值,这应该可以工作
您的标准化公式的目的不是将值置于[0,1]范围内
如果要规范化数据以使其处于这样的范围内,可以使用以下公式:
先生,您不必手动操作,只需使用sklearn library,您将在预处理部分找到不同的标准化和规范化方法
这里有几点需要注意
首先,除非输入数据具有非常特定的特征,否则z分数归一化不会产生[0,1]范围内的特征
其次,正如其他人所指出的,数据归一化的两种最常见方法是标准化和最小-最大缩放
设置数据
标准化
正如您所看到的,这些值远远不在[0,1]中。注:z分数归一化结果数据的范围将根据输入数据的分布而变化
最小最大缩放
这里我们确实得到了[0,1]中的值
讨论
在
sklearn
preprocessing module中存在这些和许多其他定标器。出于各种原因,我建议阅读sklearn
文档并使用它们,而不是手动操作:sklearn
至少在计算效率上是一样的,而且通常更有效李>sklearn
,您不需要存储从缩放训练数据到随后在测试数据上重用的最小/最大/平均/标准差等。相反,您可以只使用scaler.fit_transform(X_train)
和scaler.transform(X_test)
李>scaler.inverse_transform(data)
李>我相信还有其他原因,但这些是我想到的主要原因
相关问题 更多 >
编程相关推荐