紧急!!!用MATLAB怎么使两个矩阵互溶成一个
给你个样板
function C = mult(A, B)
m = size(A, 1);
k = size(A, 2);
n = size(B, 2);
if k ~= size(B, 1)
error('cannot do A*B');
return
end
for j = 1 : n
for r = 1 : k
for i = 1 : m
C(i, j) = A(i, r) * B(r, j);
end
end
end
return
我的想法是,你把两个矩阵先放一起,然后给每列编个号(1,2,3.。。。。n),再将1到n这n个数随机排一下序(用rand函数),这样就可以达到你所要的随机组合了。
例如:>>Num=rand(1,3)
Num =
0.9649 0.1576 0.9706
>>[X,I]=sort(Num)
X =
0.1576 0.9649 0.9706
I =
2 1 3
说明:这里的3换成总列数,结果I便是1到n的随机排序了,后面的你应该会做了(本人学得也不是很好,这方法虽可行但稍嫌麻烦)
a=[1 1 1 2 2 2 3 3 3;1 1 1 2 2 2 3 3 3;1 1 1 2 2 2 3 3 3;4 4 4 5 5 5 6 6 6;4 4 4 5 5 5 6 6 6;4 4 4 5 5 5 6 6 6;7 7 7 8 8 8 9 9 9;7 7 7 8 8 8 9 9 9;7 7 7 8 8 8 9 9 9];
b=[4 5 5 6 6 7;4 5 5 6 6 7;4 5 5 6 6 7;7 8 8 9 9 0;7 8 8 9 9 0;7 8 8 9 9 0;1 2 2 3 3 4;1 2 2 3 3 4;1 2 2 3 3 4];
tempb1=b(:,1:2);
tempb2=b(:,3:4);
tempb3=b(:,5:6);
tempa1=a(:,1:3);
tempa2=a(:,4:6);
tempa3=a(:,7:9);
c=[tempa1,tempb1];
c=[c,tempa2];
c=[c,tempb2];
c=[c,tempa3];
c=[c,tempb3]
a=[1 1 1 2 2 2 3 3 3;1 1 1 2 2 2 3 3 3;1 1 1 2 2 2 3 3 3;4 4 4 5 5 5 6 6 6;4 4 4 5 5 5 6 6 6;4 4 4 5 5 5 6 6 6;7 7 7 8 8 8 9 9 9;7 7 7 8 8 8 9 9 9;7 7 7 8 8 8 9 9 9];
b=[4 5 5 6 6 7;4 5 5 6 6 7;4 5 5 6 6 7;7 8 8 9 9 0;7 8 8 9 9 0;7 8 8 9 9 0;1 2 2 3 3 4;1 2 2 3 3 4;1 2 2 3 3 4];
c=[1 1 1 4 5 2 2 2 5 6 3 3 3 6 7;1 1 1 4 5 2 2 2 5 6 3 3 3 6 7;1 1 1 4 5 2 2 2 5 6 3 3 3 6 7;4 4 4 7 8 5 5 5 8 9 6 6 6 9 0;4 4 4 7 8 5 5 5 8 9 6 6 6 9 0;4 4 4 7 8 5 5 5 8 9 6 6 6 9 0;7 7 7 1 2 8 8 8 2 3 9 9 9 3 4;7 7 7 1 2 8 8 8 2 3 9 9 9 3 4;7 7 7 1 2 8 8 8 2 3 9 9 9 3 4];
cc=[a(:,1:3),b(:,1:2),a(:,4:6),b(:,3:4),a(:,7:9),b(:,5:6)]; %你要的代码
max(max(abs(c-cc))) %最大误差
如果a与b行数相同,则语法格式为c=[a,b]
如果a与b列数相同,则语法格式为c=[a;b]
matlab中如何隔两个数取两个数~在线等,急求
下面程序能实现(1到100,每隔两个数抽取两个)X=1:1:100;Y=ones(1,50);for i=1:25 Y(:,2*(i-1)+1) =X(:,4*(i-1)+1);Y(:,2*(i-1)+2) =X(:,4*(i-1)+2);end X Y
急!两个矩阵的相关性怎么分析
matlab两个矩阵的相关性的分析方法:用corrcoef(X,Y) 函数实现两个矩阵的相关性的分析。函数格式 corrcoef(X,Y) 函数功能:其中%返回列向量X,Y的相关系数,等同于corrcoef([X Y]);函数举例:在命令窗口产生两个10*3阶的随机数组x和y,计算关于x和y的相关系数矩阵:x=rand(10,3);y=rand(10,...
急!!!MATLAB我想两图相减 不过这两个图不一样大 怎么办
imrersize函数使用由参数method指定的插值运算来改变图像的大小。method的几种可选值:'nearest'(默认值)最近邻插值 'bilinear'双线性插值 'bicubic'双三次插值 B = imresize(A,m)表示把图像A放大m倍 B = imresize(...,method,h)中的h可以是任意一个FIR滤波器(h通常由函数ftrans2、fwind1、f...
【急求】matlab里如何在一个界面显示两幅图?
--- figure(1);...绘制第一个图 figure(2);...绘制第二个图 --- 如果是指把两个图都放在一个figure中的话,然后出现了第二个图会擦除第一个图的问题的话,采用下面的代码:--- figure(1);hold on;绘制这两个图的代码 ---
在matlab里求两个给定坐标距离的函数是什么?
x=[X1-X2,Y1-Y2]norm(x)点到直线距离d=|A*X1+B*Y1+C|\/sqrt(A^2+B^2)
如图: 怎么用matlab将上面2个三角函数叠加成第三个三角函数?或者如何...
就是加吧,最后图像挺近的 t = 0:0.01:30;y = cos(3*pi*t)+(0.3*cos(3.13*pi*t));plot(t,y)axis([0,30,-2,2])
用matlab编写函数求两个数的最小公倍数。调用该函数求键盘输入的两个...
22 temp=max(x,y);23return(x*y\/temp);24} 25main()26{ 27inta,b,m,n;28 cout<<"请输入两个整数a和b:";29 cin>>a>>b;30 m=max(a,b);31 n=min(a,b);32 cout<<"最大公约数是"<<m<<"最小公倍数是"<<n<<endl;33return0;34} ...
用MatLab如何编写一个程序能求任意两个数的平方和与立方和 急求.._百...
a=input(‘请输入一个数’);b=input(‘请输入一个数’);c=a^2+b^2 d=a^3+b^3
如图:怎么用matlab将上面2个三角函数叠加成第三个三角函数?或者如何...
最下面那幅图:t=0:0.1:20;plot(t,sin(10*t).*(abs(sin(0.5*t))+1));不知能够帮到你,祝顺利。
matlab中怎么求两条用函数表示的曲线的交点
求解思路:第一步:建立自定义函数文件,tx_fun.m。文件包含两条曲线函数方程。第二步:用fsolve()函数,求解两条曲线的交点。第三步:用plot()函数,画出两条曲线 第四步:用text()函数,在两条曲线的交点附近标注交点坐标值