如何计算匹配组合条件的行?

时间:2015-04-25 00:11:34

标签: octave

例如,我有矩阵m =

1 0 1 0 1 1;
0 1 0 1 0 1;
1 0 1 0 1 1;
0 1 0 1 0 1

我想要计算第一个元素m(i,1)= 1和第三个元素m(i,3)= 1的行数。

使用for循环将起作用。但是,我希望有一个简单的方法可以做到这一点。八度函数和SEEMS只支持一个条件。

1 个答案:

答案 0 :(得分:0)

在八度音阶中找到符合特定条件的行非常容易:

m(:,1) == 1 # m(i, 1) = 1
m(:,3) == 1 # m(i, 3) = 1

您可以使用八度&(逻辑和)和|(逻辑或)运算符组合多个条件:

(m(:,1) == 1) & (m(:,3) == 1)

如果您只想要一些匹配的roes,可以使用sum函数:

sum((m(:,1) == 1) & (m(:,3) == 1))