【发布时间】:2012-05-24 08:46:16
【问题描述】:
我有一个问题。 假设我有矩阵 一个=
1 2 3
4 5 6
7 8 9
10 11 12
我需要从 A 中选择 n 个滚动行并将新矩阵 C 中的元素按行转置。 我使用的循环是:
n = 3; %for instance every 3 rows of A
B = [];
for i = 1:n
Btemp = transpose(A(i:i+size(A,1)-n,:));
B = [B;Btemp];
end
C=B';
生成矩阵 C,即:
C =
1 2 3 4 5 6 7 8 9
4 5 6 7 8 9 10 11 12
这也是我想做的,但我可以在没有循环的情况下做同样的工作吗?
计算一个 3280x35 大小的 A 矩阵需要 4 分钟。
【问题讨论】:
-
重塑功能在我的情况下如何工作?我是 MATLAB 新手
标签: performance matlab loops matrix