从here学习Matlab中find()的使用和 here ,我遇到了以下用法,但找不到代码功能的解释。
X = [0.00000 0.00000 0.00000;
4.24264 0.00000 0.00000;
8.48528 4.24264 0.00000]
[A(:,1),A(:,2),A(:,3)] = find(X)
计算结果为:
A =
2.0000 1.0000 4.2426
3.0000 1.0000 8.4853
3.0000 2.0000 4.2426
find() 函数应该返回一个列向量,但是矩阵 A 如何正确初始化?
最佳答案
根据documentation :
如果指定三个输出变量:
[row,col,v] = find(X)
find 返回数组X
和向量v
中每个非零元素的行和列下标,其中包含X
的非零元素。
row =
2
3
3
col =
1
1
2
v =
4.2426
8.4853
4.2426
在您的例子中,这三个向量被分配给矩阵A
的列。
关于matlab - Matlab中find()的奇怪用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31489837/