【问题标题】:How to calculate an average cycle data in MATLAB如何在 MATLAB 中计算平均循环数据
【发布时间】:2014-05-14 06:58:22
【问题描述】:

我有一些关于许多周期的实验的原始周期性数据。在我的分析中,我只需要一个周期,但想使用整个数据阵列来获得准确性。所以我需要让 MATLAB 计算的不是绝对平均值(这很容易,使用 mean(data)),而是每次的平均值(相对于周期,我也不知道)。

关于如何做到这一点的任何建议?非常感谢!

【问题讨论】:

  • 你知道每个周期的实际周期是多少吗?另外,数据的采样周期是多少?如果您知道这两个方面,那么很容易将数据拆分为单独的单元格,然后对每个单元格应用平均值并将它们全部重新组合到一个向量中,其中每个元素都会告诉您该时期的平均值。

标签: database matlab average precision periodic-processing


【解决方案1】:

您可以使用傅立叶变换来自动检测循环长度。有一个使用 Matlab 附带的太阳黑子数据的简单演示。这个想法是使用 FFT 来检测太阳黑子活动的周期约为 11 年。

演示记录在此页面上,您可以通过在 Matlab 命令行中键入“sunspots”或“help sunspots”来运行它。

http://www.mathworks.co.uk/products/matlab/examples.html?file=/products/demos/shipping/matlab/sunspots.html

此方法的适用性在很大程度上取决于您所采样的信号类型 - 它是否是具有相对较小变化的重复模式,以及您是否捕获了很多周期来可靠地推断周期性但至少对于后者,您声明您有“许多周期”的数据。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-02
    • 1970-01-01
    • 2015-04-22
    • 2016-12-22
    • 1970-01-01
    • 1970-01-01
    • 2021-06-29
    • 1970-01-01
    相关资源
    最近更新 更多