【问题标题】:Interpolation from irregular grid to regular grid从不规则网格到规则网格的插值
【发布时间】:2013-03-13 12:13:04
【问题描述】:

我有一些不规则采样的一维数据(时间序列数据);即非恒定采样率。我想将这些数据转换为定期采样(统一采样率)的时间序列。我尝试使用线性插值来实现这一点;但是,当样本之间的时间差异很大时,这不是很有效。这并不奇怪。我还尝试了一些 ad hoc 方法,这些方法同样不是很有效。

我看过几篇关于使用匹配追踪在不规则网格上进行插值的论文;但是,我不清楚如何使用这种方法在常规网格上获取样本(至少现在还不清楚)。

如果对从不规则网格到规则网格(一维数据)的插值算法提出任何建议,我将不胜感激。

【问题讨论】:

  • 您在使用线性插值时究竟发现了什么“不是很有效”?
  • Jaime,线性插值在间隙较大时无效。应该清楚的是,在大间隙上的线性模拟会将所有估计(内插)值放在一条直线上——这在实际测量数据中几乎不会发生。这也可以通过删除随机长度的样本通过模拟轻松显示。这就是我所说的“不是很有效”。如果您愿意,我可以提供一些参考资料。
  • 注意,我使用了一个状态空间模型并应用了一个连续时间卡尔曼滤波器,然后是一个 RTS 平滑器,可用于估计平滑的 TS。但是,这并不能真正解决我的问题。我不是要平滑数据;而是在规则网格上找到测量信号的估计值。
  • 问题是您缺少数据,因此您需要更准确地确定您希望您的插值(也称为“组成”)值具有哪些属性。你宁愿让他们坐在抛物线上而不是直线上吗?使用分段二次插值器。在正弦波上?尝试傅立叶方法。随机选择的?除非您非常了解真实数据的行为,或者对插值器有精确的要求,否则真的没有正确的答案,例如连续的前两个导数。
  • “空白”是 Jaime 所说的“缺失数据”的意思。如果你想插值比线性插值“更好”,你需要为你的特定应用指定什么是“更好”——这里没有通用的答案,这完全取决于对数据应该是什么样的先验知识。

标签: numpy scipy time-series


【解决方案1】:

如果您想精确拟合数据点,请运行 scipy.interpolate.UnivariateSplines=0
(如果不清楚,请进一步询问)。

【讨论】:

    猜你喜欢
    • 2014-03-08
    • 1970-01-01
    • 2023-03-10
    • 2018-08-14
    • 2011-03-15
    • 1970-01-01
    • 2011-10-20
    • 2013-08-26
    • 1970-01-01
    相关资源
    最近更新 更多