python绘制逻辑回归拟合的图像代码
时间: 2024-11-22 12:28:34 浏览: 32
在Python中,使用matplotlib库可以帮助我们可视化逻辑回归模型的决策边界。假设我们已经得到了逻辑回归模型的预测结果,下面是一个简单的例子展示如何画出拟合曲线:
```python
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LogisticRegression
# 假设我们已经有了逻辑回归模型(model),以及特征(X)和目标变量(y)
# ...
# 对于二维数据,例如两个特征
x_min, x_max = X[:, 0].min() - 1, X[:, 0].max() + 1
y_min, y_max = X[:, 1].min() - 1, X[:, 1].max() + 1
xx, yy = np.meshgrid(np.linspace(x_min, x_max, 100),
np.linspace(y_min, y_max, 100))
# 将网格点转换为特征向量
Z = model.predict_proba(np.c_[xx.ravel(), yy.ravel()])[:, 1]
Z = Z.reshape(xx.shape)
# 绘制决策边界和数据点
plt.contourf(xx, yy, Z, cmap='RdYlBu', alpha=0.8)
plt.scatter(X[:, 0], X[:, 1], c=y, edgecolors='k', s=20)
plt.title("Logistic Regression Decision Boundaries")
plt.xlabel("Feature 1")
plt.ylabel("Feature 2")
# 显示图像
plt.show()
```
这段代码首先创建了一个网格,然后将每个网格点的坐标作为输入到逻辑回归模型进行预测,得到的是每个点属于正类的概率。通过设置颜色映射(cmap='RdYlBu’)来表示概率值,高亮部分表示模型认为正类可能性较大的区域。最后,我们将训练数据点绘出来,以便观察模型是否合理地分割了数据。
阅读全文