python多元线性回归并作图
时间: 2023-10-18 11:23:41 浏览: 139
以下是一个示例代码,用于多元线性回归并作图:
```python
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
# 读取数据
data = pd.read_csv('data.csv')
# 划分自变量和因变量
X = data[['x1', 'x2']]
y = data['y']
# 初始化线性回归模型
model = LinearRegression()
# 拟合数据
model.fit(X, y)
# 预测结果
y_pred = model.predict(X)
# 输出系数和截距
print('Coefficients:', model.coef_)
print('Intercept:', model.intercept_)
# 画图
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.scatter(X['x1'], X['x2'], y, c='r', marker='o')
ax.plot_trisurf(X['x1'], X['x2'], y_pred, alpha=0.5)
ax.set_xlabel('x1')
ax.set_ylabel('x2')
ax.set_zlabel('y')
plt.show()
```
其中,`data.csv` 是一个包含两个自变量和一个因变量的数据文件,`LinearRegression` 是 `scikit-learn` 中的线性回归模型,`plot_trisurf` 是 `matplotlib` 中用于画三维曲面的函数。代码运行后,会输出模型的系数和截距,并打开一个三维散点图,其中红色点为原始数据点,蓝色曲面为模型拟合的结果。
阅读全文