numpy.fft.rfftfreq#

fft.rfftfreq(n, d=1.0, device=None)[source]#

返回離散傅立葉轉換的取樣頻率(用於 rfft、irfft)。

返回的浮點陣列 f 包含頻率箱中心,單位為取樣間隔的週期數(從零開始)。例如,如果取樣間隔以秒為單位,則頻率單位為週期/秒。

給定視窗長度 n 和取樣間隔 d

f = [0, 1, ...,     n/2-1,     n/2] / (d*n)   if n is even
f = [0, 1, ..., (n-1)/2-1, (n-1)/2] / (d*n)   if n is odd

fftfreq 不同(但與 scipy.fftpack.rfftfreq 類似),奈奎斯特頻率成分被視為正數。

參數:
nint

視窗長度。

d純量,選填

取樣間隔(取樣率的倒數)。預設值為 1。

devicestr,選填

在其上放置建立陣列的裝置。預設值:None。僅用於 Array-API 互操作性,因此如果傳遞,則必須為 "cpu"

在版本 2.0.0 中新增。

返回值:
fndarray

長度為 n//2 + 1 的陣列,包含取樣頻率。

範例

>>> import numpy as np
>>> signal = np.array([-2, 8, 6, 4, 1, 0, 3, 5, -3, 4], dtype=float)
>>> fourier = np.fft.rfft(signal)
>>> n = signal.size
>>> sample_rate = 100
>>> freq = np.fft.fftfreq(n, d=1./sample_rate)
>>> freq
array([  0.,  10.,  20., ..., -30., -20., -10.])
>>> freq = np.fft.rfftfreq(n, d=1./sample_rate)
>>> freq
array([  0.,  10.,  20.,  30.,  40.,  50.])