|
|
NAN Not A Number就是代表不是一个数据
( |2 A- q' B2 Z. P经常用在下面两种情况$ }* `% K& e2 N8 x5 w2 E
1.数据处理时,在实际工程中经常数据的缺失或者不完整,此时我们可以将那些缺失设置为nan,Matlab处理缺失的数据时就会跳过或者其他处理——这个是Matlab优越于其他语言的表现之一。另外但读取数据时,某个字符不是数据,那么Matlab自动将它认为nan处理
1 R% O/ e E5 X# s# t Y x9 i3 S. C
比如Matlab中提供的nanmean, nanmax, nanmin, nanstd, nansum, nanvar这么多函数可以处理包含nan的数据
# A7 T% D" h7 t( Q A; q- a6 L* a, D
2.还有就是绘图的时候,如果我们想挖掉一部分,那么nan就起作用了1 F. d0 v% l3 A! B3 [/ [
4 Y. F3 f0 {& W6 u( T# @
比如我们要绘制z=x^2+y^2在[-10 10]区域的图形但是要挖掉x<sin(y)的那部分,那我们看看如何操作[code][x,y]=meshgrid(-10:0.1:10);
) f; A- `* B- ~4 `2 e0 zz=x.^2+y.^2;
% |0 g0 N, h; v4 T: asubplot(121)2 t. u9 ~3 z$ T m% [* @7 I
mesh(x,y,z)
" C( j& p, y. k* x6 fsel=x<sin(y);
1 J" _% E2 W/ r" pz(sel)=nan;
9 M5 y4 B0 u; Gsubplot(122)/ U! R6 t# p' t, c
mesh(x,y,z) |
|