【发布时间】:2011-12-07 19:32:08
【问题描述】:
可能重复:
Is it possible to show numbers in non-engineering format in MATLAB?
我在下面应用我的标准化方法时注意到:
%# get max and min of spreadsheet(494021x42)
maxM = max(M(:)) %# Max = 693375640
minM = min(M(:)) %# Min = 0
%# normalize to -1...1
Mnormalize = ((M-minM)./(maxM-minM) - 0.5 ) *2;
当我尝试使用以下方法去规范化时:
%# to "de-normalize", apply the calculations in reverse
vec = (Mnormalize./2+0.5) * (maxM-minM) + minM
我没有完全得到正确的答案,下面是原始的电子表格 sn-p 图片:
这是非规范化的sn-p:
请注意,除了第 6 列外,它几乎完全相同,由于某种原因,输出将小数点放在错误的位置。
所以我的问题是:
1) 如何修复第 6 列
还有一个问题是:
2) 如何删除尾随零
【问题讨论】:
-
第六行甚至不存在>.
-
opps 对不起对不起我的错误我在第 6 栏 ^,.,^
-
@yoda:我认为这是无处不在的浮点问题的重复。虽然我现在似乎找不到合适的帖子。一旦有人识别出正确的欺骗,将删除我的答案。
-
也可能是
class/datatype问题,M是哪个类?
标签: matlab vector normalization denormalization