MATLAB 矩阵赋值问题

来源:百度知道 编辑:UC知道 时间:2024/05/11 04:42:27
我有A,B两个矩阵。我想把B这个矩阵赋值给A中的所有a(i,j),如何实现呢?
假如A=[a11 a12;a21 a22] B=[1 0; 0 1],我想把A变成
A=[ 1 0 1 0
0 1 0 1
1 0 1 0
0 1 0 1]

按你的意思,A里面数是啥无所谓了呗。看看这个怎么样。
>> A=[1,2;3,4];B=[1 0; 0 1];a=ones(size(A));kron(a,B)

ans =

1 0 1 0
0 1 0 1
1 0 1 0
0 1 0 1

如果A,B的size是一样的,直接

A=B;

如果A>B

[r c]=size(B);

A(1:r,1:c)=B;

N=5;
A=reshape(1:25,N,N); %生成A

n=3;
B=A(1:n,1:n);%B是A的前三行,前三列。

A=repmat(B,size(A))