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=[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))