2016-07-26 32 views
1

假設我有一個長度爲100的向量x,在Matlab中,我可以運行fft(x,32)來獲得長度爲32的複數向量。如何在R中做到這一點?如何在R中運行n點FFT?

fft(x,32)將不起作用,仍然會返回長度爲100的複合向量。

回答

2

從MATLAB文檔:

Y = FFT(X,N)返回N點DFT。如果沒有指定值,則Y是 ,其大小與X相同。

如果X是一個向量,並且X的長度小於n,那麼X將以尾隨零填充到長度n。

如果X是一個向量並且X的長度大於n,那麼X被截斷爲長度n。 ...

爲R中實現相同的結果:

fft(x[1:32]) 
+0

太好了!這也增強了我對數學的理解(低階近似)。順便說一句,答案對我來說是令人驚訝的......我原本認爲n點與「分辨率」類似, – hxd1011