问题标签 [time-frequency]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Pandas:查找高于定义阈值的结束频谱
长期阅读,第一次发帖。
我正在处理 Pandas DataFrames 中频率响应图的 x,y 数据。这是数据和图表的示例(请参阅帖子末尾的完整 .csv 文件):
其中 x = 频率和 y = 幅度数据。这些中的每一个的结果图如下所示:
我可以为 Dataframe 中 x,y 数据的每一行创建一个图。
我需要在 Pandas (Python) 中做的是在频率响应下降到本底噪声之前识别数据中的最高频率(永久)。如您所见,在某些地方 y 数据可能会达到非常低的值(例如 <-50),但随后返回 >- 40。
如何在 Pandas / python 中检测(由于数据量非常大,理想情况下无需迭代)以找到最高频率(> -40),以便我知道频率不会再次返回 < -40,然后再跳回?基本上,我试图找到频段的末端。我尝试过使用一些 Pandas 统计数据(如果有这些数据也不错),但未能获得有用的数据。
提前感谢您提供的任何指示和方向。
这是一个可以使用 csv.reader 导入的 .csv 文件:https ://www.dropbox.com/s/ia7icov5fwh3h6j/sample_data.csv?dl=0
fft - 如何对值进行非规范化以进行谐波乘积频谱
我正在尝试执行 HPS 算法,结果不正确。(48000Hz,16 位)我已经将记录频率应用于缓冲区,然后是几个分割,然后是汉宁窗,最后是 FFT。
我在每个 FFT 中都获得了一个峰值,它与我使用的频率或它的一个倍频程相对应。但是当我做 HPS 时,基频的结果是 0,因为我求和(乘)的数组的数量太小了,超过了我在原始 FFT 中的峰值。这是 HPS 的代码:
原始 HPS 代码在这里
我不知道为什么总和的值很小,什么时候应该大于前一个,以及总和的峰值。我已经应用了RealFordward FFT,也许 -1 到 1 的范围存在问题,这使得当我乘以它时我的总和会减少。
知道如何解决它,做 HPS 吗?我怎么能做逆归一化?
python - 噪声信号的 1/3 倍频程分析
我想对噪声信号进行 1/3 倍频程分析。我有一个代表声压(Pa)的时间信号。我有中心频率和上下截止频率的数组。最终目的是得到一个表示声级与 1/3 倍频程频带的条形图。
根据我遵循的理论,建议首先对信号进行 FFT。然后重建 1/3 倍频程的信号。在每个结构中,计算压力的 RMS 值。而已。将这些 RMS 值转换为声级 (dB) 并针对中心频率进行绘图。
我面临的问题是如何使用 IFFT 函数重建信号,因为新信号的幅度点数量较少。因此,由于时间和幅度之间的尺寸不一致,重建基本上是不可能的。我被困在这一点上。
我在DSP方面的经验很少。因此,即使方法与我上面尝试解释的方法不同,任何帮助都将不胜感激。提前致谢。
python - 用于时间序列中的情节频率检测和预测的现有库/算法?
我正在使用 Python 中的播客 RSS 提要。是否有任何现有的库或算法来检测和预测定期发布时间表,给定一系列时间?
例如,如果RSS 提要中的五个项目具有以下时间戳:
是否有确定“每周星期五”的算法?或者如果他们是:
确定“每周两次,下一集 27 日星期五”?我相信Pocket Casts有这样的功能,但它仍然是专有的。
frequency - 频率计数法
我是数据结构的新手,这个问题出现在模型试卷中。
计算语句 x = x+1 的频率计数;在以下代码段中
我的问题是(*)会影响频率计数吗?没有括号。
spectrogram - 使用 MNE 绘制夜间睡眠脑电图谱图
是否可以在 mne 中绘制夜间睡眠脑电图数据的频谱图?我不想创建纪元,但是要有连续 8-9 小时的频谱图。我在例如 EEGlab (Matlab) 中看到的示例具有完美的颜色区分,这使得结果非常可读。如果您能帮助我制作类似但在 mne 中的东西,我将不胜感激。
python - 跨国公司-Python;tfr_morlet 时频分析;可能不当使用论据;如何使 tfr_morlet 图正常工作?
我为这个主题的模糊性道歉。这反映了我对 tfr_morlet 图形输出的行为缺乏了解。
要指定。我正在处理 64 通道 EEG 数据。我有一个刺激事件,它是我时代的开始标记。我将我的 epoch 分成 4 个较小的 epoch,每个 1 秒,其中“Epoch1”的 1 秒持续时间内包含刺激事件和非刺激 EEG 数据。
我的工作流程如下:
- 加载 .vhdr 文件
- 应用过滤器
- 应用脑电图帽蒙太奇
- 创建事件从刺激标记开始的纪元(Epoch0)
- 制作另一个从 Epoch0 裁剪的 epoch (Epoch1) (tmin=0, tmax=1, include_tmax=True)。这给出了我有兴趣用于 tfr_morlet 函数的纪元。
- Epoch1 上的 ICA
- Epoch1 上的 tfr_morlet(后 ICA)
我一直在阅读 tfr_morlet 函数并修改参数以查看它如何影响结果图。我的工作流程的每个其他步骤似乎都在正常工作,包括,最重要的是,通过 ICA 成功删除了刺激事件。
以下是我调用 tfr_morlet 函数时的代码片段:(您会注意到我在片段中对基线参数的一些修补工作)
根据实际数据,在 epoch 的开始和结束时没有大的信号。这仅出现在 tfr_morlet 图中。我调整了 tfr_morlet 基线参数值,它似乎影响了这些奇怪的信号,但它也完全修改了所有其他信号。此外,应该有更多的信号出现在较低的频率范围内,但它们基本上不存在。有可能是数据的原因,但开头和结尾的大信号肯定不是数据的反映。
简而言之,我有点卡住了,在网上找不到太多帮助。如果有人对您的 tf 图中出现的此类问题有类似的经历,请让我知道您对如何解决此问题的想法。
如果可以在不共享我的其余代码的情况下解决此问题会更好。我相当有信心问题出在我上面提供的片段上。
感谢大家为此付出的时间和专业知识。我非常期待您的评论。当然,如果我同时解决这个问题,我也会发布我的解决方案。
signal-processing - 将收敛标准转换为 L1 范数
我有这个公共的二维变分模式分解代码: https ://www.mathworks.com/matlabcentral/fileexchange/45918-two-dimensional-variational-mode-decomposition
此代码使用 L2 范数进行最小化。我喜欢在目标函数中添加 L1 范数,使其凸出,引入稀疏性。
我认为在评论融合方面需要做一些事情。但我不知道什么
我感谢帮助谢谢萨尔