IDL使用FINITE函数查找无效值和无穷值(NAN和Inf)

在使用IDL处理数据的时候经常会遇到NAN(NOT A NUMBER)无效值和Inf(INFINITY)无穷值,而这些值的存在经常会影响我们的数据处理,所以需要把无效值去掉。但查找NAN和Inf使用普通的where是无法完成任务的,这里用到一个FINITE函数。

使用语法

Result = FINITE( X [, /INFINITY] [, /NAN] [, SIGN=value])

参数INFINITY:查找无穷值
参数NAN:查找无效值
参数SIGN:设置查找无穷大,无穷小,+NAN,-NAN,取值如下:

> 0

如果设置了INFINITY参数, 无穷大,返回1,否则返回0。如果设置了NAN参数,+NAN返回1,否则返回0。

=0 (默认值)

忽略正负

< 0

如果设置了INFINITY参数, 无穷小,返回1,否则返回0。如果设置了NAN参数,-NAN返回1,否则返回0。

使用示例

查找A中无穷值

PRINT, WHERE(FINITE(A, /INFINITY))

查找A中的NAN

PRINT, WHERE(FINITE(A, /NAN))

查找A中无穷大值

PRINT, WHERE(FINITE(A, /INFINITY,SIGN=1))
VC++开发GIS系统(37)利用IconWorkshop添加输入点按钮 VC++开发GIS系统(38)添加响应输入点消息

作者:,GIS爱好者。
分享本文,请您带上本文链接
分享到:

发表评论