我有一个包含4列/属性和150行的数据集。我想用min-max标准化来标准化这些数据。到目前为止,我的代码是:2D矩阵中单个列的最小 - 最大规范化
minData=min(min(data1))
maxData=max(max(data1))
minmaxeddata=((data1-minData)./(maxData))
这里,minData
和maxData
返回全球最小和最大值。因此,此代码实际上应用了二维矩阵中所有值的最小 - 最大值归一化,以便全局最小值为0且全局最大值为1.
但是,我想对每个列执行相同的操作单独使用。具体而言,2D矩阵的每列应该是独立于其他列的min-max标准化。
我试着用只用min(data1)
和max(data1)
,但得到的错误说,矩阵尺寸必须同意。
但是,通过使用全局最小值和最大值,我得到了[0-1]
范围内的值,并使用此归一化数据集进行了实验。我想知道我的结果是否有问题?我的理解也有问题吗?任何指导将不胜感激。
@ rayryeng:你的回答是真的helpful..and我会想知道如何修改相同的代码,如果我的数据集包含像 (8.1212879 71003636e-12,-0.01595515444407518) 我想获得整个值而不是四舍五入...你能建议任何想法吗? – puja 2015-04-03 05:49:02
你是什么意思“没有圆整的整体价值”?你的预期结果是什么? – rayryeng 2015-04-03 06:03:40
我的意思是,我需要归一化后数据集中的每个值,因为它们是...如果数据集中的值类似于8.121287971003636e-12,我想对其进行归一化并得到归一化的值。 ies,不是四舍五入到一些小数点).hope你明白了我的意思。 – puja 2015-04-03 06:42:07