在matlab矩阵归一化

274(30天)
珍妮弗
珍妮弗 2013年1月30日
编辑: 为副总经理 2022年12月11日
嗨. .我想要规范化矩阵(129 x 128) . .请帮我与matlab代码

接受的答案

托尔斯滕
托尔斯滕 2013年1月30日
规范化矩阵,这样所有的值落在区间[0,1]使用
Anorm = (- min2 (A)) / (max2 (A) - min2 (A));
3评论
为副总经理
为副总经理 2022年12月11日
编辑:为副总经理 2022年12月11日
这里。/不需要,因为分母是一个标量。
说,没有函数min2()或max2(),我也不能找到证据证明有函数的名字已经被移除。也许他们曾经是一个工具箱的一部分。
或者,你可以做的:
Anorm = (- min ((:))) / (max ((:)) - min ((:)));
或者你可以做
Anorm = (A - min ([],“所有”))/ (max ([],“所有”)- - - min ([],“所有”));
尽管后者选择不会有2013年左右

登录置评。

更多的答案(3)

马特·J
马特·J 2013年1月30日
你需要决定你想如何定义矩阵的振幅。也许你想要这个
归一化= /规范(A);
或者也许这
归一化= / max (abs ((:)))
3评论
1月
1月 2013年1月30日
请,珍妮弗,我们要求你“正常化”的确切定义。它浪费时间如果我们猜出你的意思。

登录置评。


京
2013年1月30日
您可以使用“normc”或“normr”正常化。“c”或“r”代表列或行你想正常化。

为副总经理
为副总经理 2022年12月11日
从R2018a,您可以使用 正常化 ()来执行标准化以各种不同的方式。
一个= 1:6
一个= 1×6
1 2 3 4 5 6
B1 =正常化(,“范围”)%的默认范围是[0 1]
B1 = 1×6
0 0.2000 0.4000 - 0.6000 0.8000 - 1.0000
B2 =正常化(,“范围”[1,2])%,但您可以指定任何范围
B2 = 1×6
-1.0000 -0.4000 0.2000 0.8000 1.4000 2.0000
B3 =正常化(,“zscore”,“性病”)%中心零位和规模std = 1
B3 = 1×6
-1.3363 -0.8018 -0.2673 0.2673 0.8018 1.3363
B4 =正常化(,“规范”,2)%由向量规范化p-norm(默认p = 2)
B4 = 1×6
0.1048 0.2097 0.3145 0.4193 0.5241 0.6290

类别

找到更多的在调整和重塑矩阵帮助中心文件交换

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!