在 Excel 中有几种直接的方法可以做到这一点。
也许最简单的用途LINEST是根据 x 截距的试验值拟合线条。该函数的输出之一是均方残差。用于Solver找到最小化均方残差的 x 截距。如果您在控制Solver时小心翼翼——尤其是通过将 x 截距限制在合理的范围内并给它一个良好的起始值——您应该得到很好的估计。
繁琐的部分涉及以正确的方式设置数据。 我们可以通过隐式模型的数学表达式来解决这个问题。有五组数据:让我们按k范围从1至5(图中从下到上)。然后可以通过第二个索引识别每个数据点j作为有序对xkj,ykj. (看起来xkj=xk′j对于任何两个索引k和k′,但这不是必需的。)在这些术语中,模型假设有五个斜率βk和一个 x 截距α; 那是,ykj应近似为βk(xkj−α). 组合LINEST/Solver解决方案使差异的平方和最小化。或者——这将在评估置信区间时派上用场——我们可以查看ykj从具有共同未知方差的正态分布中独立得出σ2和手段βk(xkj−α).
这个公式有五个不同的系数,建议LINEST使用k紧随其后的是一列ykj.
我使用类似于问题中显示的模拟数据制作了一个示例。下面是数据数组的样子:
[B] [C] [D] [E] [F] [G] [H] [I]
k x 1 2 3 4 5 y
-----------------------------------------------
355 7355 0 0 0 0 636
355 0 7355 0 0 0 3705
355 0 0 7355 0 0 6757
355 0 0 0 7355 0 9993
355 0 0 0 0 7355 13092
429 7429 0 0 0 0 539
...
奇怪的值7355,7429等,以及所有的零,都是由公式产生的。例如,单元格D3中的那个是
=IF($B2=D$1, $C2-Alpha, 0)
这里,Alpha是一个包含截距的命名单元(当前设置为 -7000)。此公式在粘贴标题为“1”到“5”的列的全部范围时,会在每个单元格中放置一个零,除非k(显示在最左边的列中)对应于列标题,它在其中放置差异xkj−α. 这是使用 执行多元线性回归所需要的LINEST。表情看起来像
LINEST(I2:I126,D2:H126,FALSE,TRUE)
RangeI2:I126是 y 值的列;范围D2:H126包括五个计算列;FALSE规定 y 截距是强制的0; 并TRUE要求提供扩展统计信息。公式的输出占据 6 行 x 5 列的范围,其中前三行可能看起来像
1.296 0.986 0.678 0.371 0.062
0.001 0.001 0.001 0.001 0.001
1.000 51.199
...
奇怪的是(在 Excel 中进行统计时,您必须忍受这种奇怪的现象 :-),输出列以相反的顺序对应于输入列:因此,1.296是列的估计系数H(对应于k=5, 我们命名为β5)0.062而是列的估计系数D(对应于k=1, 我们命名为β1)。
特别注意输出51.199的第 3 行第 2 列LINEST:这是残差平方和的均值。这就是我们想要最小化的。在我的电子表格中,这个值位于 cell U9。在观察情节时,我认为 x 截距肯定介于−20000和0. 这是通过改变来最小化的相应Solver对话框U9αXIntercept,在此表中命名:

它几乎立即返回了一个合理的结果。要了解它的性能,请将模拟中设置的参数与以这种方式获得的估计值进行比较:
Parameter Value Estimate
Alpha -10000 -9696.2
Beta1 .05 .0619
Beta2 .35 .3710
Beta3 .65 .6772
Beta4 .95 .9853
Beta5 1.25 1.2957
Sigma 50 51.199
使用这些参数,拟合非常好:

通过计算拟合并使用它来计算对数似然度,可以走得更远。 Solver可以一次修改一组参数(初始化为LINEST估计值),以获得小于最大值的对数似然的任何期望值。以通常的方式 - 通过将对数似然度降低一个分位数χ2分布——您可以获得每个参数的置信区间。事实上,如果你愿意——这是学习最大似然机制如何工作的好方法——你可以LINEST完全跳过该方法并使用Solver最大化对数似然。然而,Solver以这种“赤裸裸”的方式使用——事先不知道参数估计应该是什么——是有风险的。 Solver将很容易停在(较差的)局部最大值。初始估计的组合,例如通过猜测α和应用LINEST,以及快速应用Solver来完善这些结果,更加可靠并且往往效果很好。