MATLAB 怎么判断矩阵中是否存在某一行等于一个行向量。

如:A=[1,2,3;2,3,4;1,3,4];b=[1,3,4];c=[1,2,4];这里A与b比较结果就应为1;A与c比较结果就应为0;判断方法要尽量简单,谢谢。。。... 如:A=[1,2,3;
2,3,4;
1,3,4];b=[1,3,4];c=[1,2,4];这里A与b比较结果就应为1;A与c比较结果就应为0;
判断方法要尽量简单,谢谢。。。!!!
展开
 我来答
思孕
2014-09-28 · TA获得超过389个赞
知道小有建树答主
回答量:645
采纳率:0%
帮助的人:415万
展开全部
实际上我只要用一行就可以了!
clc
A=[1,2,3;
2,3,4;
1,3,4];
b=[1,3,4];
c=[1,2,4];

%判定************************************
sa=size(A,2);
p=c; %将需要判定的行赋值给p
pz=ones(sa,1)*p-A;
panding=logical(size(find(sum(abs(pz)')'==0),1))%判定结果
清雪之明
2018-11-06 · TA获得超过564个赞
知道答主
回答量:83
采纳率:0%
帮助的人:57.2万
展开全部
%% 使用MATLAB自带函数检验:ismember
clc;clear all;
A=[1,2,3;
2,3,4;
1,3,4];
b=[1,3,4];
c=[1,2,4];
ismember(b,A,'rows')
ismember(c,A,'rows')
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lliang77
2014-09-28 · TA获得超过104个赞
知道答主
回答量:189
采纳率:0%
帮助的人:135万
展开全部
function [ c ] = decide( a, b )
c=0;
for i=1:size(a,1)

if(sum(abs(a(i,:)-b))==0)
c=1;
break;
end
end
end
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
再也不回头心碎E2f40
2018-03-20 · 知道合伙人教育行家
再也不回头心碎E2f40
知道合伙人教育行家
采纳数:0 获赞数:6
全国中学生生物竞赛宁德市三等奖

向TA提问 私信TA
展开全部
有个函数;
k=ismember(a,b,'rows')
a与b是列数相同的矩阵,如果a中的某一行与b中某一行元素相同,返回1,否则返回0。
注:k=ismember(a,b,'rows')中2012版本的Matlab是‘rows’,而以前版本的是‘row’
例 a=[1 2 3;
2 4 6];
b=[1 2 3;
2 4 7;
2 4 6;
1 3 6];
k1=ismember(a,b,'rows');
k2=ismember(b,a,'rows');
结果 k1 =1
1

k2=1
0
1
0
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式