小白求解: matlab 找出矩阵中的非零列

比如我现在有一个2*9的矩阵,A=[8 34 14 0 7 0 3 0 0], B=[0 11 4 0 3 0 0 0 0]。现在我想输出A,B中同时不为零的列数,即输出2,4,5
请问该怎么写代码呢?

A=[8 34 14 0 7 0 3 0 0];
B=[0 11 4 0 3 0 0 0 0];
index = A&B;
A(index)
B(index)

望采纳追问

不好意思,我题目写错了。。因为我的是2*9的矩阵,所以应该是A = [8 34 14 0 7 0 3 0 0;0 11 4 0 3 0 0 0 0]。这是一个矩阵里的两行。。不是两个矩阵

追答

A = [8 34 14 0 7 0 3 0 0;0 11 4 0 3 0 0 0 0];
index = A(1,:)&A(2,:);
find(index)
望采纳

温馨提示:内容为网友见解,仅供参考
无其他回答

在MATLAB中,如何找出矩阵的非零元素。并且输出它所在的行和列。只要非...
for i = 1:num R(row(i), col(i)) = 1; % 非零元素置一 end

在MATLAB中,如何找出矩阵的非零元素。并且输出它所在的行和列。只要非...
find(R~=0)可以输出按照一列一列来找的第多少个不是0你自己对结果做一些处理就可以输出所在的行和列(比如说对find的结果除以5,所得到的商即为所在的列,余数即为所在的行)

matlab如何求出一个矩阵的所有非零元素和
1、打开matlab,命令行窗口输入x=[0 1 3 4;9 0 3 7],创建一个x数组,如下图所示。2、输入a=(x~=0)进行比较各个元素是否为0,如下图所示。3、按回车键之后,可以看到x数组各个元素是否为0,为0就显示为0,不是就显示为1,如下图所示。4、输入sum(a(:))求x数组的非零元素的个数,...

求助,Matlab计算矩阵每行中非零元素个数的简便方法
c=sum(B) %将B按列求和, C各分量就是A对应行中非零元素的个数

matlab中find 函数如何使用
a2和v中,如`[a1, a2, v] = find(a)`,其中1表示行号,2表示列号,3则是非零值本身。总之,find()函数在MATLAB中灵活且强大,它可以帮助你高效地定位矩阵中的非零元素,根据需求调整参数,以满足不同的查找需求。通过熟练掌握这些用法,你将能更好地利用find()函数进行矩阵操作。

matlab如何依次输出一个矩阵每一行最后一个非零元素所在的列
R=[1 2 3 1 2 1 0 0 0 4 4 0 5 0 6 1 1 1 1 0 5 0 8 6 0];[m,n]=size(R);for i=1:m for j=1:n k=n+1-j;if (R(i,k)~=0)X(i,1)=k;break end end end X

请教一下matlab如何求矩阵各列中的非零数按大小排列序数?
请教一下matlab如何求矩阵各列中的非零数按大小排列序数?假设原来的矩阵叫做A a=size(A,2);for i=1:a if A(i)==0 A(i)==[];i=i-1;b=size(A,2);if i==b break end end end

matlab中find函数的问题
find()函数用于找出矩阵X中所有的非零数,r代表行序号,c代表列序号,v是找出的数的值。在你给的X中,非零的数分别为 3, 2, -5, 7, 1 它们的位置分别是 3 第1行第1列 2 第1行第2列 -5 第2行第2列 7 第2 行第3列 1 第3行第3 列 所以所得结果为 r = 1 2 1 2 3 c =...

matlab中如何判断矩阵的元素是否为零
any和all函数在连接操作时很有用,设x是0-1向量,如果x中任意有一元素非零时,any(x)返回“1”,否则返回“0”;all(x)函数当x的所有元素非零时,返回“1”,否则也返回“0”.这些函数在if语句中经常被用到.如:if all(A<5)do something end 另外,还有"&&"和"||"运算符,Matlab中的...

怎么使用matlab的find()函数?
matlab的find()函数可以找出参数中非零元素的索引(即下标),因此获取矩阵中某个元素的下标的实现方法为:在matlab命令窗口输入find()函数。具体应用举例如下:1、在matlab命令窗口输入一个示例矩阵:A = [1 2 3;3 4 5;5 6 7],输入及显示如下:2、继续在命令窗口输入:[m,n] = find(A==2...

相似回答
大家正在搜