如何规范化矩阵? [英] How can I Normalized a matrix?

查看:1550
本文介绍了如何规范化矩阵?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用下面的代码对矩阵进行归一化;每列的数据幅度原因与其他列的差异很大,因此我的答案不在0到1之间.

I use below code for normalizing my matrix; cause of amplitude of my data is very different in each column than other column, so my answers aren't between 0 and 1.

A = rand(m,n)
normA = max(A) - min(A);               
normA = repmat(normA, [length(a) 1]);  

normalizedA = A./normA;

我原始数据的一部分是:

a part of my original data are:

32512035.2100000    5401399.57000000    346.880000000000
32512044.0300000    5401399.54000000    346.850000000000
32512046.8900000    5401399.55000000    346.780000000000
32512049.7800000    5401399.53000000    346.860000000000
32512052.6900000    5401399.53000000    346.700000000000
32512054.0300000    5401399.53000000    346.780000000000
32512055.6900000    5401399.57000000    346.810000000000
32512063.1200000    5401399.54000000    347.800000000000
32512074.2300000    5401399.55000000    346.440000000000
32512093.1200000    5401399.54000000    346.660000000000

和归一化的是:

341584.736395270    39652.0303186782    6.02013189864630
341584.829061797    39652.0300984462    6.01961124609511
341584.859110126    39652.0301718569    6.01839639014231
341584.889473648    39652.0300250355    6.01978479694551
341584.920047298    39652.0300250355    6.01700798333912
341584.934125886    39652.0300250355    6.01839639014231
341584.951566525    39652.0303186782    6.01891704269351
341585.029629143    39652.0300984462    6.03609857688303
341585.146355346    39652.0301718569    6.01249566122874
341585.344821410    39652.0300984462    6.01631377993752

我必须分别对任何列进行规范化吗?

Do I have to normalized any column separately?

推荐答案

您应使用:

max_value = max(A(:));
min_value = min(A(:));
normalizedA = (A - min_value)/(max_value - min_value);

这篇关于如何规范化矩阵?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆