在matlab中NAN是什么意思?

 我来答
dbb627
推荐于2017-12-15 · TA获得超过1.2万个赞
知道大有可为答主
回答量:2127
采纳率:88%
帮助的人:1377万
展开全部
NAN Not A Number就是代表不是一个数据
经常用在下面两种情况
1.数据处理时,在实际工程中经常数据的缺失或者不完整,此时我们可以将那些缺失设置为nan,Matlab处理缺失的数据时就会跳过或者其他处理——这个是Matlab优越于其他语言的表现之一。另外但读取数据时,某个字符不是数据,那么Matlab自动将它认为nan处理

比如Matlab中提供的nanmean, nanmax, nanmin, nanstd, nansum, nanvar这么多函数可以处理包含nan的数据

2.还有就是绘图的时候,如果我们想挖掉一部分,那么nan就起作用了

比如我们要绘制z=x^2+y^2在[-10 10]区域的图形但是要挖掉x<sin(y)的那部分,那我们看看如何操作[code][x,y]=meshgrid(-10:0.1:10);
z=x.^2+y.^2;
subplot(121)
mesh(x,y,z)
sel=x<sin(y);
z(sel)=nan;
subplot(122)
mesh(x,y,z)
上海华然企业咨询
2024-10-28 广告
在测试大模型时,可以提出这样一个刁钻问题来评估其综合理解与推理能力:“假设上海华然企业咨询有限公司正计划进入一个全新的国际市场,但目标市场的文化习俗、法律法规及商业环境均与我们熟知的截然不同。请在不直接参考任何外部数据的情况下,构想一套初步... 点击进入详情页
本回答由上海华然企业咨询提供
帐号已注销
2018-03-30 · TA获得超过1.1万个赞
知道小有建树答主
回答量:45
采纳率:100%
帮助的人:9515
展开全部

NaN 用于处理计算中出现的错误情况,比如 0.0 除以 0.0 或者求负数的平方根。NaN 实际上不是一个数,而是一族。

NAN Not A Number就是代表不是一个数据。一般出现这个东西的原因有两个:

  1. 你的程序里出现0作为分母的运算,这个时候可以考虑把被除矩阵整体加一个无限小量,例如1e-10。这样可以消除0作分母的现象。

  2. 如果上面这个做法不管用,就是你自己的算法和编程的问题了,导致结果不收敛,发散。

参考资料

在matlab中NAN是什么意思.豆丁网[引用时间2017-12-30]

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bufault啊梅
2015-05-06 · TA获得超过533个赞
知道小有建树答主
回答量:335
采纳率:0%
帮助的人:153万
展开全部
NAN Not A Number就是代表不是一个数据
经常用在下面两种情况
1.数据处理时,在实际工程中经常数据的缺失或者不完整,此时我们可以将那些缺失设置为nan,Matlab处理缺失的数据时就会跳过或者其他处理——这个是Matlab优越于其他语言的表现之一。另外但读取数据时,某个字符不是数据,那么Matlab自动将它认为nan处理

比如Matlab中提供的nanmean, nanmax, nanmin, nanstd, nansum, nanvar这么多函数可以处理包含nan的数据

2.还有就是绘图的时候,如果我们想挖掉一部分,那么nan就起作用了

比如我们要绘制z=x^2+y^2在[-10 10]区域的图形但是要挖掉x<sin(y)的那部分,那我们看看如何操作[code][x,y]=meshgrid(-10:0.1:10);
z=x.^2+y.^2;
subplot(121)
mesh(x,y,z)
sel=x<sin(y);
z(sel)=nan;
subplot(122)
mesh(x,y,z)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
静静的蜜蜜
2012-08-13 · TA获得超过235个赞
知道答主
回答量:18
采纳率:0%
帮助的人:2.6万
展开全部
NaN 用于处理计算中出现的错误情况,比如 0.0 除以 0.0 或者求负数的平方根。NaN 实际上不是一个数,而是一族。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
轨道小爱

2021-04-02 · TA获得超过2.1万个赞
知道大有可为答主
回答量:3.9万
采纳率:83%
帮助的人:915万
展开全部
NAN Not A Number就是代表不是一个数据
经常用在下面两种情况
1.数据处理时,在实际工程中经常数据的缺失或者不完整,此时我们可以将那些缺失设置为nan,Matlab处理缺失的数据时就会跳过或者其他处理——这个是Matlab优越于其他语言的表现之一。另外但读取数据时,某个字符不是数据,那么Matlab自动将它认为nan处理
比如Matlab中提供的nanmean, nanmax, nanmin, nanstd, nansum, nanvar这么多函数可以处理包含nan的数据
2.还有就是绘图的时候,如果我们想挖掉一部分,那么nan就起作用了
比如我们要绘制z=x^2+y^2在[-10 10]区域的图形但是要挖掉x<sin(y)的那部分,那我们看看如何操作[code][x,y]=meshgrid(-10:0.1:10);
z=x.^2+y.^2;
subplot(121)
mesh(x,y,z)
sel=x<sin(y);
z(sel)=nan;
subplot(122)
mesh(x,y,z)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式