m=[1 2 3;4 5 6; 7 8 9]
a=[1,1,1,2,2,2,2,3,3,3;1,1,1,2,2,2,3,3,3;4,4,4,5,5,5,6,6,6;4,4,4,5,5,5,6,6,6;7,7,7,8,8,8,9,9,9;7,7,7,8,8,8,9,9,9]
答案 0 :(得分:3)
我喜欢kronecker张量产品
m=[1 2 3;4 5 6; 7 8 9];
a = kron(m,ones(2,3))
a
中的每个元素都是m
中当前元素与第二个参数中矩阵之间的乘积(如果第二个参数包含除1
之外的其他值,则会清楚。但是这可以用于你的例子
答案 1 :(得分:1)
这可能比使用Kronecker产品更快:
m = [1 2 3;4 5 6; 7 8 9]; %// data
rep = [2 3]; %// number of repetitions of rows and columns respectively
a = m(ceil((1:size(m,1)*rep(1))/rep(1)), ceil((1:size(m,2)*rep(2))/rep(2)));