|
NAN Not A Number就是代表不是一个数据
/ x' i$ L+ R; f0 W经常用在下面两种情况
. C9 D- x. |2 G i0 }( B+ n1.数据处理时,在实际工程中经常数据的缺失或者不完整,此时我们可以将那些缺失设置为nan,Matlab处理缺失的数据时就会跳过或者其他处理——这个是Matlab优越于其他语言的表现之一。另外但读取数据时,某个字符不是数据,那么Matlab自动将它认为nan处理
, R+ w, U" `4 d! N2 H( t
! H1 y, G% E! T( }$ X* u比如Matlab中提供的nanmean, nanmax, nanmin, nanstd, nansum, nanvar这么多函数可以处理包含nan的数据
; {4 \5 A3 k6 O* s8 K+ Q7 m
, V+ R+ z. I" x8 r: R. l# J2.还有就是绘图的时候,如果我们想挖掉一部分,那么nan就起作用了2 D* P6 _! k8 X9 @
# B: c, p1 l0 z9 A1 S7 ~" @& X& K9 Z比如我们要绘制z=x^2+y^2在[-10 10]区域的图形但是要挖掉x<sin(y)的那部分,那我们看看如何操作[code][x,y]=meshgrid(-10:0.1:10);( p& O2 @* R2 Y3 _% s
z=x.^2+y.^2;
2 N+ F. M h" c8 }3 f6 a. fsubplot(121)
( @- @2 G/ q0 g! k- b* Omesh(x,y,z)6 u, N! Z8 _9 f& S/ |. t$ o; p1 w& e
sel=x<sin(y);2 Z. f8 l. y& _& H, V
z(sel)=nan;
! c, a: [! ?& d2 M9 c- Dsubplot(122)
7 M. y1 g1 z5 `- g. W$ K/ r* kmesh(x,y,z) |
|