ntjm.net
当前位置:首页 >> mAtlAB如何用一个列向量与另一个列向量对应相乘,生成一个列向量 >>

mAtlAB如何用一个列向量与另一个列向量对应相乘,生成一个列向量

c = b.' * a;得到的c是4*4的矩阵,正好是你要的四个列向量拼起来的.

x为行向量,直接相乘就行y=x*A

a = (1:n)'或者a = (linspace(1,n,m))'或者a = [1;2;3;4;5] 其实这个方法跟你说的一样,只不过是将两步变成了一步,后面的方法需要穷举,对于数据量比较大的就不适合了

将 for end 写到eval里面去呀eval(['for k=1:3;' 'eval([''a'' num2str(k) ''=a('' num2str(k) '',:)'']);' 'end')

怎么样将行向量变成矩阵一个矩阵?可以用一个for循环语句来写:a=[1 2 3 4 5 6 7 8 9 10 11 12];%这个相当于行向量 b=zeros(4,3);%这个相当于你申请一个空间,即m*n的数组 for i=1:4%m行 for j=1:3%n列 b(i,:)=a((1:3)+(i-1)*3)%取每n个数作为一行存入b数组 end end

matlab创建列向量有一下几种办法: 已知数据的条件下:假设数据为1 2 3 4 5. 1.1 使用'号转置: 1.2 使用;号分割: 仅创建,不在意数据的具体值 2.1 使用ones()函数 2.2 使用zeros()函数 拓展: 一般创建列向量,就是对行向量进行转置即可,列向量在许多matlab操作中是必要的形式,如神经网络的输入等等.ones和zeros函数一般在运算初始化时用于分配矩阵,以免运算时再分配,加快运算速度. 下面为ones和zeros的官方简介:

a=[1 2;3 4]; b=[1;2]; c=[]; for i=1:cols(a) c=[c,a(:,i).*b]; end c 当然,只要矩阵行数等于列向量行数,这个小程序都是可以解决的

另一个向量不唯一

你是要A的转置乘以B,还是B乘以A

函数输入是个n1 * n2矩阵,返回(n1^2) * (n2/n1)的矩阵.n2要能整除n1.你应该输入4*8或4*12之类的矩阵.函数写的很麻烦,可以简化下:function Y = zhuanlie(X) Y = reshape(X', size(X,2)/size(X,1), [])'; end 或直接使用句柄:zhuanlie = @(X)reshape(X', size(X,2)/size(X,1), [])';

网站首页 | 网站地图
All rights reserved Powered by www.ntjm.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com