- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
如何在 JMP 中执行频谱分析?
我有超过 800k 点的数据系列,我想在频域中查看它们。我尝试进行“时间序列分析”来创建谱密度数据,但 JMP 只是挂起。我让它挂了几分钟,然后我的显卡死了......真是巧合!
如果您想尝试一下,请附上数据文件,第一列是以秒为单位的时间戳,第二列是数据。请告诉我是否有办法做到这一点。
谢谢,
贾森
This post originally written in English (US) has been computer translated for you. When you reply, it will also be translated back to English (US).
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
回复: 如何进行光谱分析?
时间序列中的频谱密度命令显然使用了较慢的算法。 有一个名为“FFT”的 JSL 函数,它将使用快速算法,但前提是点数是一个很好的整数(有很多小因子)。 例如,如果我将数据截断为恰好 800,000 行,则立即返回以下 JSL:
data = Column( “y” ) << 获取值;显示( N 行( 数据 ) );
f = FFT( {数据} );显示( N 行( f[1] ) );
当前数据表() << 新列("freq", 设置值( f[1] ));
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
回复: 如何进行光谱分析?
使用 JMP 11 中 MATLAB 的 JMP 接口,通过我在 MATLAB 中编写的 FFT 分析脚本运行这些数据。 看起来你的 SR 是 1000Hz,所以这可以让你的分辨率达到你的奈奎斯特频率。 500赫兹。 很多低频能量朝向直流,但在 40 Hz - 300 Hz 之间似乎确实存在一些有趣的峰值。 这是您对这些数据所期望的结果类型吗?
使用 MATLAB 返回的结果在 Graph Builder 中绘制:
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
回复: 如何进行光谱分析?
时间序列中的频谱密度命令显然使用了较慢的算法。 有一个名为“FFT”的 JSL 函数,它将使用快速算法,但前提是点数是一个很好的整数(有很多小因子)。 例如,如果我将数据截断为恰好 800,000 行,则立即返回以下 JSL:
data = Column( “y” ) << 获取值;显示( N 行( 数据 ) );
f = FFT( {数据} );显示( N 行( f[1] ) );
当前数据表() << 新列("freq", 设置值( f[1] ));
This post originally written in English (US) has been computer translated for you. When you reply, it will also be translated back to English (US).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
回复: 如何进行光谱分析?
使用 JMP 11 中 MATLAB 的 JMP 接口,通过我在 MATLAB 中编写的 FFT 分析脚本运行这些数据。 看起来你的 SR 是 1000Hz,所以这可以让你的分辨率达到你的奈奎斯特频率。 500赫兹。 很多低频能量朝向直流,但在 40 Hz - 300 Hz 之间似乎确实存在一些有趣的峰值。 这是您对这些数据所期望的结果类型吗?
使用 MATLAB 返回的结果在 Graph Builder 中绘制:
This post originally written in English (US) has been computer translated for you. When you reply, it will also be translated back to English (US).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
回复: 如何进行光谱分析?
感谢您的观看!是的,我找到了一些其他软件(AD Instruments 的 Labchart)来进行 FFT,并且同意有一些有趣的峰值。120 Hz 和 240 Hz 表示来自整流交流电源的噪声。一些 < 1 Hz 的能量分解为具有一致倍数的峰值,可能与系统中机械部件的旋转频率相关。
我发帖主要是为了看看 JMP 中是否有一些我没有正确使用的功能,但看来频域统计分析确实不是他们的事。
This post originally written in English (US) has been computer translated for you. When you reply, it will also be translated back to English (US).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
回复: 如何进行光谱分析?
出色的! 感谢您提供有关这些数据的信息。 我很高兴我的分析符合您的期望。 JMP 实际上非常适合频域数据的统计分析,但其他一些工具(例如 MATLAB)非常适合执行专门的操作,例如对任意大小的数组执行 FFT、滤波器设计、卷积等。这就是 JMP 的可扩展性非常好的原因 - 能够访问 SAS、MATLAB 和 R,从而能够在需要时利用这些工具,然后将数据带回 JMP 进行可视化和分析。
我通过我用 JSL 编写的 FFT 应用程序运行了您的数据 - 它的工作方式就像 JMP 平台:
当您单击“确定”时,它正在连接到 MATLAB 并运行一些预先存在的代码,将时域数据转换为频域,然后将数据返回到新的 JMP 数据表以进行进一步分析和绘图。 如果我需要在 MATLAB 中对信号进行额外处理(例如运行带通滤波器),我也可以在 MATLAB 中执行此操作,然后再将数据返回到 JMP。
但当数据返回 JMP 时,我可以根据需要进行分析或可视化。 例如,我使用本地数据滤波器仅关注整流交流源分量 > 3 Hz 的信号部分。
然后使用“行”>“行选择”>“选择主导”来关注 Pareto 前沿上的点。 JMP 确定了 33 个 FFT 箱,我可以使用“表”>“子集”对其进行子集化。 如果我选中“链接到原始数据表”,则子集和完整数据集将被链接。 我放置了一个 + 标记,并将子集中的这些点着色为红色,并且它们在原始数据表中重新着色。
根据您试图回答的问题,将决定分析这些数据的最佳方法,但是一旦转换后的数据返回 JMP,您就可以以任何您想要的方式探索它。 @Xan 关于在 JSL 中使用 FFT 函数的建议也很棒。 我只是选择使用 MATLAB,因为我已经有了一个在 MATLAB 中执行各种信号处理操作的代码库,并且我还经常需要使用 IIR 或 FIR 滤波器来过滤数据,作为分析步骤的一部分,MATLAB 非常适合这项任务(用于设计滤波器和执行滤波步骤)。
This post originally written in English (US) has been computer translated for you. When you reply, it will also be translated back to English (US).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
回复: 如何进行光谱分析?
您能否分享您的脚本并让我尝试在我的数据中运行 FFT?
This post originally written in English (US) has been computer translated for you. When you reply, it will also be translated back to English (US).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
回复: 如何进行光谱分析?
你好丹尼尔,
我同意菲奥娜的请求。 您可以分享一下代码吗?
谢谢
This post originally written in English (US) has been computer translated for you. When you reply, it will also be translated back to English (US).