numpy.fft.rfftfreq#

fft.rfftfreq(n, d=1.0, device=None)[源代码]#

返回离散傅里叶变换样本频率(用于与 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 相似),Nyquist 频率分量被认为是正的.

参数:
nint

窗口长度.

d标量,可选

样本间距(采样率的倒数).默认为1.

devicestr, 可选

创建的数组放置的设备.默认:None.仅用于数组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.])