当波在 Python 中是正弦波或方波时,是否可以用 1 个参数来描述?

问题描述

我正在使用 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 (将#修改为@)