这篇教程Matlab如何实现矩阵复制扩充写得很实用,希望能帮到您。 考虑这个问题:定义一个简单的行向量a 
如何复制10行呢?即: 
同理,对于一个列向量,如何复制 10 列呢? 关键函数1:repmat( A , m , n ):将向量/矩阵在垂直方向复制m次,在水平方向复制n次。 
再举一个例子,对于 a =[1 2;3 4]: 
垂直方向复制3次,水平方向复制2次,结果是: 
接下来进阶一下,玩点复杂的。对于 a = [1 2;3 4],如何变成下面这样: 
关键函数:kron( a , B ) :对 a 的每一个元素 e,都数乘B矩阵,构成新的矩阵。具体用法可以doc kron。 引用 Matlab 的帮助文档,对于 A 和 B,kron(A,B) 的图示如下: 
回到上面的问题,对于 a=[1 2;3 4], 
matlab中x0=[x0,x0] 矩阵扩展就是说对矩阵x0进行扩展,左右各一个x0组成的新的矩阵赋值给x0。 比如: x0=[1,2;3,4]x0 = 1 2 3 4x0=[x0,x0]x0 = 1 2 1 2 3 4 3 4 以上为个人经验,希望能给大家一个参考,也希望大家多多支持51zixue.net。 给numpy.array增加维度的超简单方法 关于Numpy之repeat、tile的用法总结 |