dask.array.fft.rfftfreq
dask.array.fft.rfftfreq¶
- dask.array.fft.rfftfreq(n, d=1.0, chunks='auto')[源代码]¶
返回离散傅里叶变换样本频率(用于 rfft, irfft)。
此文档字符串是从 numpy.fft.rfftfreq 复制的。
Dask 版本可能存在一些不一致性。
返回的浮点数组 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 频率分量被认为是正的。
- 参数
- n整数
窗口长度。
- d标量,可选
样本间距(采样率的倒数)。默认为1。
- 设备str, 可选 (Dask 中不支持)
创建的数组要放置的设备。默认值:
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.])