- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图从 these set of slides 重现 Watson 的频谱图(PDF 第 30 页,幻灯片的第 29 页),来自 this data of housing building permits .
Watson 获得了非常平滑的频谱曲线,很容易分辨出峰值频率。
当我尝试对数据运行 FFT 时,我得到了一个非常嘈杂的频谱曲线,我想知道是否有我遗漏的中间步骤。
我在 python 上运行了傅立叶分析,使用 scipy 包 fftpack 如下:
from scipy import fftpack
fs = 1 / 12 # monthly
N = data.shape[0]
spectrum = fftpack.fft(data.PERMITNSA.values)
freqs = fftpack.fftfreq(len(spectrum)) #* fs
plt.plot(freqs[:N//2], 20 * np.log10(np.abs(spectrum[:N//2])))
有人可以帮我解决丢失的链接吗?
最佳答案
贴出的曲线看起来不太现实。但是有很多方法可以使用各种重采样和/或绘图插值来获得具有相似“曲线”量的平滑结果。
我喜欢的一种方法是将数据切成段(窗口,可能重叠),大约比您想要看到的最大“颠簸”数量长 4 倍,也许更长一点。然后在使用更长的(大小大约为您想要的最终绘图的分辨率)零填充 FFT 之前对每个段进行窗口化。然后对多个窗口段的多个 FFT 的结果进行平均。这是有效的,因为零填充 FFT(几乎)等效于最高质量的 Sinc 内插低通滤波器。
关于python - 如何平滑时间序列的频谱?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63065675/
我对复值频谱执行 iFFT 并通过让第一个样本归零来更改相应的时域信号。最后,我通过 FFT 将其转换回频域。 我想知道这里使用两侧(对称)频谱或仅使用一侧频谱(仅正频率)之间的(物理)差异在哪里,因
我正在尝试提高使用 cython 计算 Jonswap 频谱的性能。但它似乎比原始代码慢得多。我该如何改进? 赛通代码: from libc.math cimport exp from libc.st
我目前可以使用 JavaScript Web Audio API 播放音轨。在播放此轨道时,我可以提取 FFT 频谱数据、峰值、RMS 值等。 但是,出于我的应用程序的目的,我需要能够在开始播放轨道之
我正在尝试将频谱保存在我的 FMOD_DSP_PARAMETER_FFT 中,但我只收到充满零的频谱,如果你能看到我的错误我会同意,我认为我没有很好地将 DSP 连接到 channel 或类似的东西,
我有一个复杂的信号,我想对其进行 FFT。使用 Mathematica 我得到以下结果: (* Some acquisition params *) fS = 100. 10^6; time = 10
我是一名优秀的程序员,十分优秀!