python - 如何在我的代码中实现回归模型图?
问题描述
我有一个小学校项目,想以任何方式展示函数的情节,可能是这样: 我知道我的代码可能很糟糕,如果你有任何改进,就把它们扔给我。
这是我迄今为止编写的代码......我将数据手动编码到程序中。
import numpy as np
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score
from sklearn import linear_model
Xtrain = np.array([[15, 15, 20, 30, 20, 20],
[10, 10, 15, 25, 15, 15],
[20, 20, 25, 35, 25, 25],
[20, 20, 30, 20, 30, 20],
[15, 15, 25, 15, 25, 15],
[25, 25, 35, 25, 35, 25],
[30, 30, 30, 30, 10, 10],
[25, 25, 25, 25, 10, 10],
[35, 25, 35, 35, 15, 15],
[20, 20, 30, 25, 30, 25],
[15, 15, 25, 20, 25, 20],
[25, 25, 35, 30, 35, 30],
[10, 10, 15, 25, 30, 20],
[10, 10, 10, 20, 25, 15],
[20, 20, 20, 30, 35, 25],
[20, 25, 25, 20, 30, 20],
[15, 20, 20, 15, 25, 15],
[25, 30, 30, 25, 35, 25]])
ytrain = np.array([20, 15, 25, 20, 15, 25, 15, 10, 20, 20, 15, 25, 15, 10, 20, 20, 15, 25])
lr = LogisticRegression().fit(Xtrain, ytrain)
yhat = lr.predict(Xtrain)
print (accuracy_score(ytrain, yhat))
解决方案
问题是您的 Xtrain(换句话说,您的 Xaxis)由 6 个变量组成。这意味着它是 6 维的。除此之外,还有一个 ytrain 的 Y 维度。一共7个维度。很难在 2D 图表上可视化 7 个维度。但是,假设您想绘制 Xtrain 中关于 Ytrain 的第一列并将其绘制在预测的 yhat 之上,您可以执行以下操作。但是请注意,这不会满足您绘制完整 Xtrain 的最初目的。
import numpy as np
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score
from sklearn import linear_model
import matplotlib.pyplot as plt
Xtrain = np.array([[15, 15, 20, 30, 20, 20],
[10, 10, 15, 25, 15, 15],
[20, 20, 25, 35, 25, 25],
[20, 20, 30, 20, 30, 20],
[15, 15, 25, 15, 25, 15],
[25, 25, 35, 25, 35, 25],
[30, 30, 30, 30, 10, 10],
[25, 25, 25, 25, 10, 10],
[35, 25, 35, 35, 15, 15],
[20, 20, 30, 25, 30, 25],
[15, 15, 25, 20, 25, 20],
[25, 25, 35, 30, 35, 30],
[10, 10, 15, 25, 30, 20],
[10, 10, 10, 20, 25, 15],
[20, 20, 20, 30, 35, 25],
[20, 25, 25, 20, 30, 20],
[15, 20, 20, 15, 25, 15],
[25, 30, 30, 25, 35, 25]])
ytrain = np.array([20, 15, 25, 20, 15, 25, 15, 10, 20, 20, 15, 25, 15, 10, 20, 20, 15, 25])
lr = LogisticRegression().fit(Xtrain, ytrain)
yhat = lr.predict(Xtrain)
plt.scatter(x=Xtrain[:,0],y=ytrain,color="blue")
plt.scatter(x=Xtrain[:,0],y=yhat,color="red")
plt.show()
输出如下。在这种情况下,预测值和观测值非常接近。如果我的解释有任何意义,或者我完全错误地阅读了问题要求,请告诉我。
推荐阅读
- python - Quadratic graph assist Python on Calculator
- xamarin - change a value in xamarin forms through a website
- python - Using selenium and python, i want to find if the website has a specific string in and if it does print yes or if it doesnt print no
- javascript - How to delete a element in react-flow while clicking on delete button
- amazon-cloudwatch - Cloudwatch 代理在服务缩减时丢失指标
- foreach - 如何为 ForEach 中的每张卡片添加导航链接,以便它们有自己的屏幕可以访问?
- excel - springboot使用poi下载excel不起作用
- angular - 当我的应用程序中有 angular 10 时,与 keycloak 服务器 12.0.4 一起使用的正确 angular keycloak 版本是什么
- python - 将 python 请求中的标头指定为用户代理的作用}
- azure - 无法使用 CLI 创建 AKS 群集