lzth.net
当前位置:首页 >> mAtlAB中矩阵有nAn怎么办 >>

mAtlAB中矩阵有nAn怎么办

数据矩阵x x(find(isnan(x)==1)) = 0

nan是指not a number,是不是出现了除以奇异矩阵的情况,仔细检查一下代码咯。

假设你的数据存在矩阵a中 矩阵a中nan的个数可以用 numel(find(isnan(a))) 或者 numel(a(isnan(a))) 求得

NAN Not A Number就是代表不是一个数据 经常用在下面两种情况 1.数据处理时,在实际工程中经常数据的缺失或者不完整,此时我们可以将那些缺失设置为nan,Matlab处理缺失的数据时就会跳过或者其他处理——这个是Matlab优越于其他语言的表现之一。另...

有很多运算会产生nan,0*Inf,Inf - Inf,Inf/Inf,0/0以及所谓任意数除以0的情况,调试的时候观察是否有这些情况产生。再次强调一下调试很重要,nan不可能是在你截图的这句产生的,请一步一步调试看看是哪一步产生的nan,然后分析为什么产生nan。

假设你的数据存在矩阵a中 矩阵a中nan的个数可以用 numel(find(isnan(a))) 或者 numel(a(isnan(a))) 求得

你的数据,应该是length(part{i,3})的结果全部是3 你是要把part{i,3}内有NaN的数去掉,然后length(part{i,3})的结果变为非NaN的数的个数吗? 如果是,可以这样 for ii = 1:size(part, 1) temp = part{i, 3}; part{i, 3} = temp(~isnan(temp)); end

假设你的数据存在矩阵a中 矩阵a中nan的个数可以用 numel(find(isnan(a))) 或者 numel(a(isnan(a))) 求得 1、M文件最顶端加clear或者主程序里运行之前先clear 2、这种错误一般不会是因为sum引起的,估计是生成矩阵过程中运算有误。可以检查一下基...

会影响的。用mean求均值时,如果矩阵中含有NaN,对应列的均值就是NaN。 例: a = 1 2 3 NaN NaN 0 ans = NaN NaN 1.5000 以下修改能不让NaN参与计算,但不一定是最优的。 mean(a(find(isnan(a) == 0))); ans = 1.5000 但是这样求出的是矩阵中所...

会影响的。用mean求均值时,如果矩阵中含有NaN,对应列的均值就是NaN。 例: a = 1 2 3 NaN NaN 0 ans = NaN NaN 1.5000 以下修改能不让NaN参与计算,但不一定是最优的。 mean(a(find(isnan(a) == 0))); ans = 1.5000 但是这样求出的是矩阵中所...

网站首页 | 网站地图
All rights reserved Powered by www.lzth.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com