我正在尝试创建类似于ISLR示例的逻辑回归,但是使用python代替
data=pd.read_csv("data/Default.csv")
#first we'll have to convert the strings "No" and "Yes" to numeric values
data.loc[data["default"]=="No", "default"]=0
data.loc[data["default"]=="Yes", "default"]=1
X = data["balance"].values.reshape(-1,1)
Y = data["default"].values.reshape(-1,1)
LogR = LogisticRegression()
LogR.fit(X,np.ravel(Y.astype(int)))
#matplotlib scatter funcion w/ logistic regression
plt.scatter(X,Y)
plt.xlabel("Credit Balance")
plt.ylabel("Probability of Default")
但是当我想要右边的那个时,我一直在左边看图表:
编辑:plt.scatter(x,LogR.predict(x))是我的第二个,也是错误的猜测.
解决方法:
你使用预测(X)来给出类的预测.
用predict_proba(X)[:,1]替换predict(X),它将给出数据属于class 1的概率.
标签:python,pandas,scatter-plot,scikit-learn
来源: https://codeday.me/bug/20190611/1216935.html