matlab中的find函数可以返回指定元素的位置,但是有时候会发现矩阵中明明存在一个数,但是返回位置却是空的,即找不到指定元素的位置。这时候需要考虑的是matlab的精度问题。如下图中,表面上第一个元素是0.6678,但是[i j]=find(a==0.6678)返回的却是空值,原因很可能是matlab的精度问题。具体地,点击0.6678这个数可能并不是0.6678,小数点后面可能还存在多个小数位,正确的做法应该是[i j]=find(abs(a-0.6678)<1e-5),其中1e-5控制精度,这时候一般就会得到期待的返回值了。
关于matlab中find函数失效的问题
最新推荐文章于 2022-07-11 19:57:12 发布