Matlab 求矩阵每列中第一个非负元素的索引

Matlab 求矩阵每列中第一个非负元素的索引,matlab,Matlab,我有一个35000*200矩阵,我想在matlab中确定每列的第一个非负元素的索引。具体来说,在输出端,我需要一个1*200的向量,其中每个元素都是对应列中第一个非负元素的行索引 谢谢。 Sajjad您可以在逻辑上使用max。如果您的数据在矩阵A中,并且您希望结果在向量i中: [M, i] = max(A >= 0, [], 1); % we find the first non-negative value per column. i(~M) = 0; % if all values a

我有一个35000*200矩阵,我想在matlab中确定每列的第一个非负元素的索引。具体来说,在输出端,我需要一个1*200的向量,其中每个元素都是对应列中第一个非负元素的行索引

谢谢。
Sajjad

您可以在逻辑上使用
max
。如果您的数据在矩阵
A
中,并且您希望结果在向量
i
中:

[M, i] = max(A >= 0, [], 1); % we find the first non-negative value per column.
i(~M) = 0; % if all values are negative in that column, we output 0 for it.

您可以在逻辑上使用
max
。如果您的数据在矩阵
A
中,并且您希望结果在向量
i
中:

[M, i] = max(A >= 0, [], 1); % we find the first non-negative value per column.
i(~M) = 0; % if all values are negative in that column, we output 0 for it.

欢迎来到堆栈溢出。它将帮助您阅读-我们将帮助您解决代码问题,但我们不会为您编写它。显示您尝试过的代码,以及如果希望帮助,则显示您遇到的任何错误欢迎使用堆栈溢出。它将帮助您阅读-我们将帮助您解决代码问题,但我们不会为您编写它。显示您尝试过的代码,如果需要帮助,显示您遇到的任何错误