微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何计算fft来存储正弦和余弦值,然后将高次谐波设置为零以在python中执行傅立叶平滑?

如何解决如何计算fft来存储正弦和余弦值,然后将高次谐波设置为零以在python中执行傅立叶平滑?

可以通过在scipy或numpy模块中使用各种函数来进行Python中的傅立叶变换。我想通过以下方法对可用数据执行傅立叶平滑处理:

  1. 对可用数据进行傅立叶变换
  2. 将高次谐波设置为0
  3. 然后进行其逆傅立叶变换

我通过在python中使用numpy进行了如下尝试:

X=np.fft.rfft(ds)
X[3:]=0
Y=np.fft.irfft(ds)

我有一个4维的每日气温数据集,其维度为时间,水平,纬度和经度。但是我想进行傅立叶变换,以便将FFT系数:实(余弦)和虚数(正弦)存储为两个不同的部分。为此,FFT功能应引入一个额外的(第5个)维度。 例如,fftofds [0,0:11,6,6]应该在时间(0:11),level(6),纬度(6),经度(6)和fftofds返回real(余弦)部分[1,6]应该在时间(0:11),level(6),纬度(6),经度(6)处返回虚数(正弦)部分。
此外,高次谐波应设置为零。例如:fftofds [3:] = 0,然后应对其执行逆FFT。 如何使用Python实现此目标?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。