我有很多 FFT 数据,我想将它们全部放入一个二维数组中。每个新条目看起来像:([1 2 3 4 5 6 7 ...]
依此类推,对于 1200 列)。
我想将它添加到末尾(矩阵的底部),例如:
[ 1 2 3 4 5 6 7
1 2 3 4 5 6 7
... ] <-- add here please
我想知道我应该怎么做?
我有很多 FFT 数据,我想将它们全部放入一个二维数组中。每个新条目看起来像:([1 2 3 4 5 6 7 ...]
依此类推,对于 1200 列)。
我想将它添加到末尾(矩阵的底部),例如:
[ 1 2 3 4 5 6 7
1 2 3 4 5 6 7
... ] <-- add here please
我想知道我应该怎么做?
我认为您的意思是基本串联
>> a = [1 2 3 4 5 6 7 ...];
>> b = [2 3 4 5 6 7 8 ...];
>> c = [a; b]
c =
1 2 3 4 5 6 7 ...
2 3 4 5 6 7 8 ...
如果您在循环中执行此操作,则预先分配矩阵是一个好习惯:
>> a = zeros(5);
>> for i = 1:5
>> a(i, :) = randi(10,1,5);
>> end
a =
3 6 10 10 2
10 10 5 9 2
5 10 8 10 7
1 9 10 7 8
8 4 7 2 8
虽然在技术上可以“增长”数组(如 中a = [a; randi(10,1,5)]
),但不建议在循环内执行此操作 - 这会使它们变得非常慢。
或者,您可以使用cat进行连接。
干杯,我已经设法使用不同的解决方案解决了我的问题。我将分享我的答案,以防将来有人偶然发现这一点。
i=1;
A=zeros(m,n);
while(i<m)
(do some FFT stuff here)
A(i,1:n)=(F.*conj(F))'; %where F is the temporary vector for storing FFT results
i=i+1;
end