当前位置:首页>开发>正文

Matlab中矩阵相减 matlab A(m ,2)B(n,2)矩阵相减。

2023-06-06 15:35:14 互联网 未知 开发

 Matlab中矩阵相减 matlab A(m ,2)B(n,2)矩阵相减。

Matlab中矩阵相减

用 ismember()
用一个循环,把b过一遍
for i = 1 : length(b)
if (ismember(b(i),a))
b(i) = NaN
end
end
当然你的提问不清楚
如果两个矩阵大小不一样的话你没法直接-的,所以我的理解你就是要把a和b重叠的地方消除。用NaN代替。

哦,不好意思,貌似你的意思是a和b有一部分完全一样是吧?你可以参考一下ismember() 还有find()。你可以补充细节然后我再看看怎么做。

matlab A(m ,2)B(n,2)矩阵相减。

function [C] = nn(A,B)
%必须保证输入A、B格式正确
[ma,na]=size(A)
[mb,nb]=size(B)
m=1
for i=1:mb
for j=1:ma
if B(i,1)==A(j,1)&&B(i,2)~=A(j,2)
C(m,1)=B(i,1)
C(m,2)=B(i,2)-A(j,2)
m=m 1
end
end
end
end
按你的意思写的,你把上面的另存为nn.m文件,用matlab运行即可。

matlab 矩阵相减问题 急急急!!1

以下是矩阵每项相减的程序。
不能理解什么是"循环和项之间的相减"。

function M = mymatsub(A, B)

try
M = A - B
catch
disp(Cannot sub matrix!)
M = []
end

===============================
测试1:
A = rand(3, 2)
B = rand(3, 2)
mymatsub(A, B)
ans =
0.5362 -0.051 0.3589 0.474 -0.8305 -0.87测试A = rand(3, 2)
B = rand(3, 1)
Cannot sub matrix!
ans =
[]

最新文章