rfftfreq#
- scipy.fft.rfftfreq(n, d=1.0, *, xp=None, device=None)[источник]#
Возвращает частоты выборок дискретного преобразования Фурье (для использования с rfft, irfft).
Возвращаемый массив float 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.
- xparray_namespace, опционально
Пространство имен для возвращаемого массива. По умолчанию None, используется NumPy.
- deviceустройство, опционально
Устройство для возвращаемого массива. Действительно только когда xp.fft.rfftfreq реализует параметр устройства.
- Возвращает:
- fndarray
Массив длины
n//2 + 1содержащий частоты выборки.
Примеры
>>> import numpy as np >>> import scipy.fft >>> signal = np.array([-2, 8, 6, 4, 1, 0, 3, 5, -3, 4], dtype=float) >>> fourier = scipy.fft.rfft(signal) >>> n = signal.size >>> sample_rate = 100 >>> freq = scipy.fft.fftfreq(n, d=1./sample_rate) >>> freq array([ 0., 10., 20., ..., -30., -20., -10.]) >>> freq = scipy.fft.rfftfreq(n, d=1./sample_rate) >>> freq array([ 0., 10., 20., 30., 40., 50.])