Please enable JavaScript to view this site.

引言

分段回归通常也被称为“分段”回归或分段线性回归。采用此方法时,对于所有X值小于某个指定值X0的数据点,拟合一条直线;对于所有X值大于X0的数据点,拟合另一条直线,同时确保这两条直线在X0处相交。

分段回归通常在以下情况下很有用:当X代表时间,且您在时间点X0处采取了某种操作来改变直线的斜率时。例如,您注射了某种药物,或者迅速改变了温度。在这些情况下,您的模型确实具有两个斜率,且存在一个明显的过渡点。

在其他情况下,真实模型的斜率是逐渐变化的。数据拟合的是一条曲线,而非两条直线。这种情况下,使用分段回归拟合数据并无帮助。

注意事项

请勿使用分段回归分析双相Scatchard或Lineweaver-Burk图。双相Scatchard图遵循一条曲线,而非两条相交直线。其中不存在突兀的断点。您应改用双位点结合曲线拟合原始数据。

分步操作

创建一个 XY 数据表。将时间输入到 X 列,测量值输入到 Y 列。如果有多个实验条件,请将第一个条件放在 A 列,第二个放在 B 列,依此类推。

输入数据后,点击“分析”,选择“非线性回归”,选择“线性方程”面板,并选择“分段回归”。

模型

Y1 = 截距1 + 斜率1*X 

YatX0 = 斜率1*X0 + 截距1

Y2 = YatX0 + 斜率2*(X – X0) 

Y = IF(X<X0, Y1, Y2)

 

方程的第一行通过截距和斜率定义了第一条线段。

方程的第二行计算该线段右端(当 X=X0 时)的第一条分段回归线的 Y 值。

方程的第三行计算第二条分段回归线段。由于我们需要一条连续的直线,因此第二条线段左端的 Y 值必须等于第一条线段右端的 Y 值(YatX0)。 第二线段上任意其他位置的 Y 值等于 YatX0 加上由第二回归线引起的增量。该增量等于第二线段的斜率(slope2)乘以从 X0 到 X 的距离。

最后一行定义了所有 X 值的 Y 值。如果 X 小于 X0,则 Y 被设为 Y1;否则,Y 被设为 Y2。

参数解读

Intercept1 是第一线段与 Y 轴相交时的 Y 值。

Slope1 是第一线段的斜率,表示为 Y 单位除以 X 单位。

Slope2 是第二线段的斜率,表示为 Y 单位除以 X 单位。

X0 是两条线段相交时的 X 值。通常,您会希望将其限制为一个常数,该值等于您实施实验干预的时间。

 

扩展至三段

Prism 未包含三段式分段回归的预设方程,但您可以将其作为用户自定义方程输入:

Y1 = 截距1 + 斜率1*X

YatX0 = 截距1 + 斜率1*X0 

Y2 = YatX0 + 斜率2*(X - X0)

YatX1 = YatX0 + 斜率2*(X1-X0)

Y3 = YatX1 + 斜率3*(X - X1)

Y = IF(X<X0, Y1, IF(X<X1, Y2, Y3))

.