python做多元线性回归
时间: 2023-07-18 18:26:49 浏览: 95
python实现多元线性回归
多元线性回归是一种常见的统计学方法,可以用于建立多个自变量与一个因变量之间的线性关系模型。在 Python 中,可以使用 statsmodels 和 scikit-learn 两个库来进行多元线性回归的建模。
下面是使用 statsmodels 进行多元线性回归的示例代码:
```python
import statsmodels.api as sm
import numpy as np
# 构造输入数据
X = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
# 构造输出数据
y = np.array([10, 20, 30])
# 添加常数项
X = sm.add_constant(X)
# 建立模型
model = sm.OLS(y, X).fit()
# 输出结果
print(model.summary())
```
上述代码中,我们首先构造了一个 3 行 3 列的输入数据矩阵 X 和一个长度为 3 的输出数据向量 y。然后,使用 `add_constant` 方法将 X 矩阵的第一列添加了常数项,接着使用 `OLS` 方法建立模型,并使用 `fit` 方法进行拟合。最后,使用 `summary` 方法输出模型的详细信息,包括模型参数估计值、标准误差、t 值、p 值等。
如果您使用的是 scikit-learn 库,可以参考以下示例代码:
```python
from sklearn.linear_model import LinearRegression
import numpy as np
# 构造输入数据
X = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
# 构造输出数据
y = np.array([10, 20, 30])
# 建立模型
model = LinearRegression().fit(X, y)
# 输出结果
print('intercept:', model.intercept_)
print('coefficients:', model.coef_)
```
上述代码中,我们首先构造了一个 3 行 3 列的输入数据矩阵 X 和一个长度为 3 的输出数据向量 y。然后,使用 `LinearRegression` 类建立模型,并使用 `fit` 方法进行拟合。最后,使用 `intercept_` 和 `coef_` 属性分别输出截距和模型系数的估计值。
阅读全文