matlab中如何找到陣列中某個數值的索引的問題

2021-04-15 12:28:08 字數 4485 閱讀 7683

1樓:匿名使用者

邏輯判斷浮點數一般都有這個問題, 不能嚴格相等, 可以用 (x-x0)

matlab陣列中如何找某個值的座標

2樓:灩麗

1、首先需要知道matlab陣列找某個值的座標,是使用find函式,可以在命令列視窗中輸入help find。

2、在matlab命令列視窗中輸入a=[1 4 5;6 7 8;7 9 12],建立a陣列。

3、輸入[m,n]=find(a==9),找到a陣列等於9的座標。

4、按回車鍵之後,可以看到a陣列等於9的座標有一個,是第3行第2列。

5、如果等於的值有多個,會返回多個座標位置。

3樓:匿名使用者

1、實現方法

使用find()函式:[m,n]=find(a==x)2、解析

a==x:將矩陣a的每個元素與x比較,如果相等,相應位置的元素就等於1,否則為0。

find(x):返回x中非零元素的索引(即行列位置)。

3、例項演示:找出矩陣a中所有等於3的元素的行列位置開啟matlab,在命令視窗執行如下**:

>> a=[1 2 3 4 5;6 7 3 1 2]>> [m,n]=find(a==3)

從執行結果可知,找到a中元素3的位置為:第1行第3列 和 第2行第3列。

4樓:mcr董事長

>> a=[1 2 3 4 5;6 7 3 1 2];

>> [m,n]=find(a==3)

m =1

2n =33

>>

5樓:兔子和小強

find(a == 3)

在matlab中,如何查詢某個矩陣中滿足特定數值的行和列的值?

6樓:宇逸

[i,j]=find(a==1)

返回所尋找的元素的行標 i 和列表 j

7樓:匿名使用者

[m,n]=find(a==1)

m,n分別為行數,列數

matlab中如何取出矩陣中的某一個值

8樓:藤閣美人

1、開啟matlab,在命令列視窗中輸入 a=[1 2 3;4 5 6],按回車鍵,建立一個2行3列的a矩陣內

2、如果我們想獲取矩陣第

容2行第1列的值,輸入a(2,1)

3、如果想獲取矩陣第2行第3列的值,輸入a(2,3)4、如果想間隔的獲取矩陣多個值,可以使用 a(2,[1 3])方式,這是獲取矩陣第2行第1列,第3列的值

5、如果我們想獲取第2行的資料,可以使用a(2,:)

9樓:天雲一號

在matlab中,取出bai矩陣中某一個值的方du法如下:

1、對於二維陣列zhi:dao

a(i, j) % 表示取出專二維陣列a的第

屬 i 行,第 j 列的資料

a(:, j) % 表示取出二維陣列a的第 j 列的所有資料

a(i, :) % 表示取出二維陣列a的第 i 行的所有資料

2、多維陣列的方法與二維陣列類似(以三維陣列為例):

b(i, j, k) % 表示取出三維陣列a的第k個二維陣列的第 i 行,第 j 列的資料

b(:, j, k) % 表示取出三維陣列a的第k個二維陣列的第 j 列的所有資料

b(i, :, k) % 表示取出三維陣列a的第k個二維陣列的第 i 行的所有資料

b(i, j, :) % 表示取出三維陣列a的每個二維陣列的第 i 行,第 j 列的資料

10樓:匿名使用者

objv(1,1)才是第一個數

或objv(1,:)

怎樣返回matlab矩陣中某個元素的下標

11樓:用著追她

1、首先需要知道matlab中求矩陣元素下標,可以使用find函式,在命令列視窗中輸入「回help find」,可以看到find函式的答使用方法。

2、命令列視窗中輸入 a=[1 3 5 6;7 8 12 9],建立一個a矩陣。

3、輸入[row,col]=find(a==5),求a矩陣元素為5的下標。

4、按回車鍵之後,可以看到元素為5的下標是第1行第3列。

5、如果我們找的一個值在矩陣中有多個的話,返回的下標位置也是多個。

12樓:匿名使用者

matlab的find()函式可來以找出引數中自非零元素的

索引(即下標),因此獲取矩陣中某個元素的下標的實現方法為:在matlab命令視窗輸入find()函式。具體應用舉例如下:

1、在matlab命令視窗輸入一個示例矩陣:a = [1 2 3;3 4 5;5 6 7],輸入及顯示如下:

2、繼續在命令視窗輸入:[m,n] = find(a==2),表示二維矩陣a中等於2的元素的行列位置分別賦值給m和n,輸出結果為:

即表示元素2在矩陣a的第1行第2列。

3、為了測試矩陣中存在多個元素的情況,例如查詢元素3的下標,在命令視窗輸入: [m,n] = find(a==3),此時輸出結果為:

因為矩陣a中有兩個元素都等於3,所以結果包含兩組位置,分表表示第2行第1列和第1行第3列。

13樓:匿名使用者

假設你上面抄的矩陣為a,用find函式就行了襲,如果你找bai

的是不重du復的某個數,例zhi如6則在windows輸入[row,col] =find(x == 6) 就會返回dao6行列數,如果是重複的數如0,則[row,col] =find(x == 0) 返回的是row=[1 2]

clo=[1 5]

意思是第1行第1列和第2行第5列都是0,行座標和列座標被分別放置的

14樓:匿名使用者

你給的資料來格式太模糊……

如果在自rect中找value為val的值的位置bai,使du用ind=find(rect==val)%返回zhi索引[row column]=find(rect==val)%返回row和column

更多find()資料,請參閱百

dao科wiki.ilovematlab.cn

15樓:匿名使用者

find(a == 1.1)

matlab中,怎麼找出一組資料中靠近某個值的所有點,並輸出位置 5

16樓:59分粑粑

實現的方法和詳細的操作步驟如下:

1、第一步,需要知道matlab陣列找到所有接近某個值的點的座標是使用「find」函式,可以在命令列視窗中輸入「help find」,如下圖所示,然後進入下一步。

2、其次,完成上述步驟後,輸入「a =[1 4 5;6 7 8;7 9 12]」,在matlab命令列視窗中建立副本陣列,如下圖所示,然後進入下一步。

3、接著,完成上述步驟後,輸入「[m,n]  =find(a == 9)」並找到等於9的陣列的座標,如下圖所示,然後進入下一步。

4、然後,完成上述步驟後,按enter鍵確認,可以看到陣列中有一個座標等於9,即第三行和第二列,如下圖所示,然後進入下一步。

5、最後,完成上述步驟後,如果有多個具有相同的值,將返回相應的多個座標位置,如下圖所示。這樣,問題就解決了。

17樓:智慧小白菜

1、首先需要知道matlab陣列找靠近某個值的所有點座標,是使用find函式,可以在命令列視窗中輸入help find。

2、在matlab命令列視窗中輸入a=[1 4 5;6 7 8;7 9 12],建立a陣列。

3、輸入[m,n]=find(a==9),找到a陣列等於9的座標。

4、按回車鍵之後,可以看到a陣列等於9的座標有一個,是第3行第2列。

5、如果等於的值有多個,會返回多個座標位置。

18樓:匿名使用者

a=[1, 3,4

4,5,3];

b=find(a>2&a<5);

b =235

6b代表所需資料的下標,a的元素自上而下自左向右排列

19樓:匿名使用者

假設你的資料存在一個矩陣h中[~, i]=min(abs(h(:)-0.0054))i是最接近0.0054的列索引位置。最近的值為y=h(i)

matlab找陣列中某個數的全下標

20樓:我行我素

你說用fine找單下標,是不對的,你的意思可能是find,如:

>> a=magic(3)

a =8 1 6

3 5 7

4 9 2

>> l=find(a==2)

l =9

求雙下標是用ind2sub,如:

>> k=ind2sub(l,size(a))k =3 3

給定陣列如何讓matlab生成這個陣列中的

x 10 20 30 x randi length x 其中randi length x 生成從1 bai x的長度 這幾個自然 du數中隨即zhi的dao一個數 讓這個數作為下回標,就可以從答x中隨即選取一個數x randi length x i 0 while i 0 i 10 randint ...

matlab中如何使陣列中既有數字又有字串

從陣列狹義角度來說bai,matlab並不允許陣列中du出現字串。但是字zhi符串陣列可以實dao現。例如 str 12 tea 則str中包含了回數答字與字串,但是注意,這裡的12是兩個字元,而不是1個數字。除了使用字串陣列實現,還可以通過元胞陣列實現。元胞陣列是matlab中一種陣列,其可以包含...

Matlab中怎樣在矩陣中找出所有大於某固定值的元素

如a 1 2 3 4 34 2 6 7 34 45 65 54 b find a 10 那麼就會輸出b 2 3 6 9 12 這是以列優先的單下標輸出方式輸出下標 matlab中怎樣在一個矩陣中找出所有大於某固定值的元素 如a 1 2 3 4 34 2 6 7 34 45 65 54 b find ...