Python - AI 助手

Python statistics.linear_regression() 函数



Python 的statistics.linear_regression()函数使用最小二乘法返回简单线性参数的斜率和截距。

简单线性回归描述了自变量x和因变量y之间的关系,用线性函数表示,即:

y = 斜率*x + 截距 + 噪声

这里,斜率和截距是估计的回归参数,噪声表示线性回归中给定数据的可变性。这些值等于变量的预测值和实际值之间的差异。

输入变量必须长度相同,并且自变量x不能是常数;否则会抛出StatisticsError异常。

语法

以下是statistics.linear_regression()函数的基本语法。

statistics.linear_regression(x, y, /, *, proportional = False)

参数

此函数采用x和y值,其中x是自变量,y是因变量。

返回值

回归函数返回斜率和截距。

示例 1

这里,我们演示了statistics.linear_regression()函数来确定x和y值。

import statistics
x = [0, 1, 2, 3, 4, 5, 6, 7]
y = [12, 13, 12, 15, 16, 17, 18, 19]
slope, intercept = statistics.linear_regression(x, y)
print("slope - ", slope)
print("Intercept - ", intercept)

输出

结果如下所示:

slope -  1.0714285714285714
Intercept -  11.5

示例 2

在下面的示例中,我们使用statistics.linear_regression()函数计算负数。

import statistics
x = [-3, -4, -5, -7, -9, -4, -2]
y = [-13, -31, -14, -56, -35, -43, -23]
slope, intercept = statistics.linear_regression(x, y)
print("slope - ", slope)
print("Intercept -", intercept)

输出

我们将得到如下输出:

slope -  3.262295081967214
Intercept - -14.868852459016392

示例 3

在下面的例子中,我们假设如果蒙提·派森保持和平,预测到2019年为止制作的蒙提·派森电影的累计数量。

import statistics
x = [1971, 1975, 1979, 1982, 1983]
y = [1, 2, 3, 4, 5]
slope, intercept = statistics.linear_regression(x, y)
print(round(slope * 2019 + intercept))

输出

这将产生以下结果:

16

示例 4

这里,我们计算给定值的线性回归(假设x = 100)。

import statistics
x = [19, 75, 97, 82, 31]
y = [21, 12, 43, 74, 35]
slope, intercept = statistics.linear_regression(x, y)
print(round(slope * 100 + intercept))

输出

输出如下所示:

49
python_modules.htm
广告