在如下所示的二维列表中,有没有办法,使用Count函数计算第一列等于1,第二列等于2而第三列不等于3的所有行?
我尝试了Count [Data,{1,2,_?(#!= 3&)}] - 但它不起作用:(。我使用模式做错了吗?
1 2 3
2 2 3
1 1 1
1 2 1
1 3 2
3 3 3
3 2 1
1 2 2
非常感谢, 米
答案 0 :(得分:3)
是的,我认为你的模式很糟糕。尝试
Count[data, {1, 2, x_ /; x != 3}]
答案 1 :(得分:1)
原始版本运行正常! (尽管使用小写变量名称,即'数据'是更好的形式。)
Data = {{1, 2, 3}, {1, 2, 4}, {1, 4, 3}, {1, 2, 5}};
Count[Data, {1, 2, _?(# != 3 &)}]
2
您也可以使用Except
:
Count[Data, {1, 2, Except[3]}]
2