问题描述
我正在使用 scipy,我设法使用 fft 包过滤掉高频数据,但这仅对转换数据有用,而不是我想在分析后只获得 1 个参数。
让我们看一些简单的代码来解释我的意思:
from scipy import fftpack
import numpy as np
import pandas as pd
from scipy import signal
t = np.linspace(0,2*np.pi,100,endpoint=True)
sq1 = signal.square(np.pi*t)
sin1 = np.sin(np.pi*t)
fft_sq1 = fftpack.dct(sq1,norm="ortho")
fft_sin1 = fftpack.dct(sin1,norm="ortho")
应用快速傅立叶变换(直接余弦)后,我得到 fft_sq1 和 fft_sin1,它们是 100 个元素长的数组。处理这些系数我可以稍后使用 fftpack.idct() 并获得不包含噪声的曲线。
问题在于我得到了太多的频率,我得到了 100 个参数我必须过滤,然后我又得到了曲线。
相反,我对只返回 1 个值的过滤器感兴趣:
0 如果曲线是完全方形的
1 如果曲线完全像正弦曲线
你有没有想到什么?
显然中间有无数条曲线,如果周期信号更平坦,则数字将更接近于 0,如果曲线更圆,则数字将更接近于 1。
谢谢!!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)