我有一些古老的代码(5 年前),我以前如何访问 real_fft() 方法是这样的:
from FFT import *
real_fft(data, fft_length)
我猜 FFT 模块是 NumPy 自带的。现在,多年后我安装了 NumPy 1.6.1
pip install numpy
我在文档中看到的所有内容 http://www.scipy.org/Numpy_Functions_by_Category ,是这些功能:
fft()
fftfreq()
fftshift()
简单()
这很奇怪,因为在这个 numpy 文档中,real_fft() 在那里:
http://numpy.sourceforge.net/numdoc/HTML/numdoc.htm#pgfId-304711
最佳答案
看起来 NumPy 近年来进行了一些重组。
http://www.scipy.org/Numpy_Example_List_With_Doc#fft
FFT 现在是 numpy.fft,real_fft() 好像改名为 rfft()
>>> from numpy import *
>>>
>>> signal = array([-2., 8., -6., 4., 1., 0., 3., 5.])
>
>>> from numpy.fft import *
>>>
>>>
>>> f = fft(signal)
>>>
>>>
>>> print f
[ 13.00000000 +0.j 3.36396103 +4.05025253j 2.00000000 +1.j
-9.36396103-13.94974747j -21.00000000 +0.j -9.36396103+13.94974747j
2.00000000 -1.j 3.36396103 -4.05025253j]
>>>
>>>
>>>
>>>
>>> f = rfft(signal)
>>>
>>> print f
[ 13.00000000 +0.j 3.36396103 +4.05025253j 2.00000000 +1.j
-9.36396103-13.94974747j -21.00000000 +0.j ]
>>>
>>>
关于python - 这些天我可以在 Python 的哪里找到 real_fft() ?它不在 numpy.fft 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7862899/