2021年6月9日 星期三

尋找非零元素

 尋找非零元素

源自於http://bime-matlab.blogspot.com/2006/09/27.html

另外一個指令find則是專門找尋矩陣中元素非為零的值及行列位置。以下面之bb矩陣為例,利用find函數查尋非零元素之序號:

>> bb=round (rand(3,3)*10)
bb =
     2     7     5
     6     7     1
     3     7     2
>> bb(2,2)=0
bb =
     2     7     5
     6     0     1
     3     7     2
>> find(bb)'
ans = 1   2   3   4   6   7   8   9
即表示bb矩陣中,其總序號第1,2,3,4,6,7,8,9個元素均為非零元素。
>> max(max(bb))
ans =     7
找到矩陣中最大的數值
bb =
     2     7     5
     6     0     1
     3     7     2
>> [m,p]=max(bb)
m =     6     7     5
p =     2     1     1
以列數與行數作為座標型態的認定。其語法則必須在指令前加三個參數,如下例:
[x y z]=find(bb,3);
>> [x y z]
ans =
     1     1     2
     2     1     6
     3     1     3
在find函數前置三個未知行向量[x,y,z],其內所存的x為該非零元素所在之列,y為其對應行,z為其元素值。
[u, v]=find(bb==0);
>> [u, v]
ans =
     2     2
亦即等於零的元素有1項,在(2,2)位置上

沒有留言:

張貼留言

Messaging API作為替代方案

  LINE超好用功能要沒了!LINE Notify明年3月底終止服務,有什麼替代方案? LINE Notify將於2025年3月31日結束服務,官方建議改用Messaging API作為替代方案。 //CHANNEL_ACCESS_TOKEN = 'Messaging ...