【问题标题】:Slope error from variation of the fitting interval拟合区间变化的斜率误差
【发布时间】:2021-08-31 20:59:01
【问题描述】:

我有这些数据,我使用任意方法获得的统计数据。一般来说,这个数据与图中黑色曲线的变化几乎相同。

从分析上我知道该数据在该数据的 t=8~ 和 t=19~ 附近的区域之间具有线性增长。

我有一个函数可以计算任何函数在我可以选择的给定区间内的线性拟合。橙色虚线曲线非常适合,这里我选择在 t=11.0 和 t=14.0 之间进行拟合,我得到的斜率(图例中的变量)几乎等于 3.74e-4 的解析斜率。

但是,如果我稍微改变我选择的间隔,假设 t=8.0 和 t=17.0,我会得到绿色的虚线曲线。坡度接近橙色,但不正确。

我需要一种方法来计算斜坡上的这种错误/差异。我很难用所有间隔组合计算所有斜率,但这只是蛮力的,而且真的很长,因为我每 1 次有 250 个点。

有没有这样的方法?有没有更好的方法来计算这个?我该怎么做?

谢谢。

【问题讨论】:

    标签: python curve-fitting


    【解决方案1】:

    我不知道我是否正确理解了您的问题。但这项任务似乎并不简单。另一方面,分析地解决它会很有趣。如何才能做到这一点?您正在尝试使用线性函数y = ax + b 来逼近某些段上的函数。一般来说,找到线性回归的系数看起来像这样 其中a 是斜率,b 是截距。 X 看起来像这样 其中 您的变量 t 和 因变量的值(黑线)。 从理论上讲,如果您的t 值被一个常数值 彼此分开,您将获得斜率a 的解析表达式,该表达式仅取决于变量t_0。 为了练习线性代数,你可以得到这个公式,例如,对于t的三个值(你只需要计算大小为3x3的逆矩阵)并进行几次矩阵乘法。这将是斜率a 对区间边界 的显式依赖。 但如果我是你,我会像你对绿线所做的那样计算几个区间的线性回归系数,这样你就可以粗略估计你想要什么。

    【讨论】:

    • 在搜索一个谈话之后。和教授一起,我得出了同样的结论。对多个区间进行线性回归,然后取最大的斜率差并将其用作误差。感谢您的宝贵时间。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-18
    • 1970-01-01
    相关资源
    最近更新 更多