技术文章 > Python技术 >  Python基础教程 > 正文

python中如何使用scipy.fftpack模块计算快速傅里叶变换?

宋雪维

在编程中,快速傅里叶变换是工程中非常有价值的一类算法,它可以将时域和频域的信号相互转化,而在python中SciPy提供fftpack模块,可让用户计算快速傅立叶变换,本文介绍python中使用scipy.fftpack模块计算快速傅里叶变换的过程。

1、使用scipy.fftpack.fftfreq()函数将生成取样频率

因为功率结果是对称的,仅仅需要使用谱的正值部分来找出频率:

In [48]: pidxs = np.where(sample_freq > 0)
In [49]: freqs = sample_freq[pidxs]
In [50]: power = np.abs(sig_fft)[pidxs]

2、使用scipy.fftpack.fft()将计算快速傅里叶变换

>>> a = np.arange(1,5)
>>> a
array([1, 2, 3, 4])
>>> b = fft(a)
>>> b
array([ 10.+0.j,  -2.+2.j,  -2.+0.j,  -2.-2.j])
>>> b[1]
(-2+2j)
>>> b[1].real-2.0
>>> b[1].imag2.0

以上就是python中使用scipy.fftpack模块计算快速傅里叶变换的过程,希望能对你有所帮助哟~

免费视频教程
本教程部分素材来源于网络,版权问题联系站长!
相关文章
  python中scipy.special模块如何使用?
  python中如何使用scipy.linalg模块计算矩阵的行列式?
  python如何求解线性方程组?
  python中scipy.linalg.inv()功能是什么?
  python中计算矩阵特征向量的方法
  python中最小二乘法如何理解?
相关视频章节
  Python语言简介
  python初认识
  Python应用领域
  五分钟装好Python解释器
  写下你第一个Python程序
  Python的代码缩进规范
  用python操作文件的3种模式
视频教程分类