sklearn中简单逻辑回归


使用鸢尾花数据集来测试逻辑回归。由于鸢尾花数据集是三个类别,而简单逻辑回归解决的是二分类,故只取鸢尾花数据集的前两个类别,而且为了可视化方便,只取数据集的前两个特征。

1.首先导入数据

#导入数据
import numpy as np
import matplotlib.pyplot as plt
from sklearn import datasets

2.加载数据集

#加载数据
iris = datasets.load_iris()
X = iris.data
y = iris.target
X = X[y<2,:2]#逻辑回归只能解决二分类,而鸢尾花有三类,将其变为两类,只取标
签为0和1的,而且为了可视化的方便,只取前两个特征值
y = y[y<2]
plt.scatter(X[y==0,0],X[y==0,1],color='red')
plt.scatter(X[y==1,0],X[y==1,1],color='blue')
#plt.show()

3.最后再使用逻辑回归就可以啦

#使用逻辑回归
from sklearn.model_selection import train_test_split
X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=.25,random_state=11)
from sklearn.linear_model import LogisticRegression
log_reg=LogisticRegression()
log_reg.fit(X_train,y_train)
print(log_reg.score('logisticregressionscore=',X_test,y_test))#计算准确率
print(log_reg.predict_proba(X_test))
print(log_reg.predict(X_test))

相关