|
NAN Not A Number就是代表不是一个数据/ b1 L" {# D+ g
经常用在下面两种情况
4 [: G) b/ y. p- F! r0 A1.数据处理时,在实际工程中经常数据的缺失或者不完整,此时我们可以将那些缺失设置为nan,Matlab处理缺失的数据时就会跳过或者其他处理——这个是Matlab优越于其他语言的表现之一。另外但读取数据时,某个字符不是数据,那么Matlab自动将它认为nan处理
( n: p( u" l) ]% ~! G3 U: ]' p R5 g( f8 R1 R5 I
比如Matlab中提供的nanmean, nanmax, nanmin, nanstd, nansum, nanvar这么多函数可以处理包含nan的数据1 o5 f l5 V$ h
7 _" T" o. R3 k2.还有就是绘图的时候,如果我们想挖掉一部分,那么nan就起作用了
% n2 H' @+ a- V) `6 n7 \8 O$ `
: W* Z2 |' e: ]0 W比如我们要绘制z=x^2+y^2在[-10 10]区域的图形但是要挖掉x<sin(y)的那部分,那我们看看如何操作[code][x,y]=meshgrid(-10:0.1:10);
N+ X% A/ @, ^; bz=x.^2+y.^2;3 d. q% \3 Q0 a9 L3 Z6 H3 y O+ m
subplot(121)4 V. y1 w; M7 {0 _
mesh(x,y,z)# ?# y# v, d$ h3 e- ?5 p# y( e
sel=x<sin(y);
! w- p" S& F! ^2 O8 x! Q gz(sel)=nan;
- ~) D" i6 R/ I3 \7 zsubplot(122)
4 c) t$ R9 l! qmesh(x,y,z) |
|