MATLAB如何构造一个每行(每列)都相同的矩阵(方阵)

已知一个有n个元素的列向量A,想要构造一个n*n方阵使每一列都为A。比如向量A=[1234]‘,想用MATLAB构造一个方阵[1111;2222;3333;4444],应... 已知一个有n个元素的列向量A,想要构造一个n*n方阵使每一列都为A。
比如向量A=[1 2 3 4]‘,想用MATLAB构造一个方阵[1 1 1 1;2 2 2 2;3 3 3 3;4 4 4 4],应该怎么编?
列少的时候可以枚举,有上千列的时候该怎么办?

每行相同的方阵也写一下嘛。

各位大侠,小弟来求代码,望不吝赐教。
展开
 我来答
cacapten
推荐于2018-05-14 · TA获得超过334个赞
知道小有建树答主
回答量:129
采纳率:0%
帮助的人:124万
展开全部
A = A(:,ones(1,n));
这个绝对可以,亲测可行,不过答案来得有点晚。不是方阵也行,把上面的n改成你要的列数即可。

不过貌似对A的长度有限制,太长的时候没法用这个办法。
戎杨氏彭癸
2019-09-22 · TA获得超过3.8万个赞
知道大有可为答主
回答量:1.4万
采纳率:26%
帮助的人:694万
展开全部
创建一个随机矩阵:它的每行每列都只有一个位置为1,其余为0
a=eye(5)
b=randperm(5)
c=a(:,b)
这样c就满足要求。
创建一个矩阵只要求每列上只有一个位置为1
a=zeros(5);
for
i=1:length(a)
b=randperm(5);
a(b(1),i)=1;
end
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
泊进√62a8648
推荐于2016-12-01 · TA获得超过501个赞
知道小有建树答主
回答量:257
采纳率:0%
帮助的人:289万
展开全部
%A是列向量
N = length(A);
ANN = zeros([N,N]);
for i=1:N
ANN(:,i) = A;
end;
ANN就是那样的阵...
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
romantic073
2013-01-16 · 超过24用户采纳过TA的回答
知道答主
回答量:90
采纳率:0%
帮助的人:58.8万
展开全部
还有一种更为简便的方法,x=1:4;y=x;[X,Y]=meshgrid(x,y)
运行出来X是列相等,Y是行相等的矩阵。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友65971e3
2022-11-22 · TA获得超过688个赞
知道小有建树答主
回答量:284
采纳率:82%
帮助的人:25.9万
展开全部
可以用repmat来构造。
repmat(A,r,c)会把A看成整体,将其填充为r乘c块的矩阵。
比如你问的问题可以写成
A=[1 2 3 4]';
B=repmat(A,1,4);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式