python线性回归怎么获取斜率和截距
时间: 2023-11-25 08:05:57 浏览: 221
在 Python 中,可以使用 scikit-learn 库中的 LinearRegression 模块来实现线性回归并获取斜率和截距。具体步骤如下:
1. 导入 LinearRegression 模块
```python
from sklearn.linear_model import LinearRegression
```
2. 准备数据
假设我们有一个包含自变量 x 和因变量 y 的数据集,可以将其分别存储在两个数组中(比如 numpy 数组)。
```python
import numpy as np
# 自变量 x
x = np.array([1, 2, 3, 4, 5])
# 因变量 y
y = np.array([2, 4, 5, 4, 5])
```
3. 创建 LinearRegression 模型
```python
model = LinearRegression()
```
4. 训练模型并获取斜率和截距
```python
# 训练模型
model.fit(x.reshape(-1, 1), y)
# 获取斜率和截距
slope = model.coef_[0]
intercept = model.intercept_
print("斜率:", slope)
print("截距:", intercept)
```
其中,`coef_` 属性返回的是一个数组,因为在多元线性回归中,每个自变量都有一个对应的系数。而在这个例子中,只有一个自变量 x,因此可以直接取出第一个元素。
值得注意的是,由于 LinearRegression 模块要求输入的自变量和因变量都是二维数组,因此需要使用 `reshape(-1, 1)` 将 x 转化为二维数组。
阅读全文