如何在Matlab矩阵中识别特定值的i,j位置?

0 matlab matrix coordinates

例如,我有一个包含400行和4000列的矩阵A,它主要由零组成,但有三个.我确实需要知道这些占据的确切位置,比如A(30,4000),A(400,3050)和A(50,200).

ray*_*ica 5

简单地说:

[row,col] = find(A);
Run Code Online (Sandbox Code Playgroud)

这将为您提供所有非零条目的行和列位置. row将包含所有行位置,col并将所有列位置包含为N x 1向量,其中N是非零元素的数量.在您的示例中,上面的输出将等效于:

row = [30; 400; 50];
col = [4000; 3050; 200];
Run Code Online (Sandbox Code Playgroud)