EDA365电子论坛网
标题:
请问NaN在matlab里面是什么意思?
[打印本页]
作者:
beachsun
时间:
2021-7-23 10:11
标题:
请问NaN在matlab里面是什么意思?
请问NaN在matlab里面是什么意思?
0 |7 n. N3 E3 B
- o7 H+ U! e/ x( z/ ?) V5 O* r7 V
今天在算一个矩阵的时候,matlab的结果是NaN,我网上查NaN的意思是not a number,
- Z) e. t3 ^; @8 t) x8 b/ S0 d* g2 m
- \( @8 W% d. e% @
指的是“值不是唯一的”还是是说这个矩阵的结果根本不是数字?
{) h) G; u% D) C7 o$ c* p- S0 I3 M0 p
作者:
SsaaM7
时间:
2021-7-23 11:23
我的理解是不是一个数,就是不是唯一的
作者:
piday123
时间:
2021-7-23 13:43
NaN或者nan都是“非数”的意思,“0/0”、“∞/∞”、“0*∞”都会产生这种结果
作者:
SpencerJ2
时间:
2021-7-23 13:43
NAN Not A Number就是代表不是一个数据
4 \5 g6 s: g% O b: u8 D s6 z
经常用在下面两种情况
% Q- s. {$ ?! z1 M1 w3 j' O6 z
1.数据处理时,在实际工程中经常数据的缺失或者不完整,此时我们可以将那些缺失设置为nan,Matlab处理缺失的数据时就会跳过或者其他处理——这个是Matlab优越于其他语言的表现之一。另外但读取数据时,某个字符不是数据,那么Matlab自动将它认为nan处理
; Z' S) R+ |1 D$ f7 U: L0 B' j
% q4 L7 Y7 P" O" d
比如Matlab中提供的nanmean, nanmax, nanmin, nanstd, nansum, nanvar这么多函数可以处理包含nan的数据
8 f; z# p/ g0 \5 o9 j( R8 L7 l+ }
" Z$ G3 q( e, J6 @2 h
2.还有就是绘图的时候,如果我们想挖掉一部分,那么nan就起作用了
- v% _. i+ C9 `' [
3 g/ W& {4 ]4 \
比如我们要绘制z=x^2+y^2在[-10 10]区域的图形但是要挖掉x<sin(y)的那部分,那我们看看如何操作[code][x,y]=meshgrid(-10:0.1:10);
5 y2 S' ?/ I2 k3 F \ o
z=x.^2+y.^2;
* _, k3 S# S: p4 @
subplot(121)
?- b9 |5 k9 p2 s9 Y8 y3 x y
mesh(x,y,z)
& R, o3 H+ D: B. x
sel=x<sin(y);
9 Y3 G& P4 I6 n" N+ s
z(sel)=nan;
& P1 W# ~7 E6 v# t$ O2 [0 r
subplot(122)
1 G8 s% o1 _' E$ T2 s ?0 x
mesh(x,y,z)
作者:
ExxNEN
时间:
2021-7-23 13:44
应该是“不明确的数值结果”的意思,也解释为没有意义
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2