task01:logistic回归方法学习及鸢尾花数据分类
sklearn中鸢尾花数据集下载:
## 我们利用 sklearn 中自带的 iris 数据作为数据载入,并利用Pandas转化为DataFrame格式
from sklearn.datasets import load_iris
data = load_iris() #得到数据特征
iris_target = data.target #得到数据对应的标签
iris_features = pd.DataFrame(data=data.data, columns=data.feature_names) #利用Pandas转化为DataFrame格式
或者:
from sklearn import datasets
X, y = datasets.load_iris(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
利用value_counts函数查看每个类别数量
pd.Series(iris_target).value_counts()
画图工具seaborn函数之pairplot:
函数pairplot作用:用来进行数据分析,画两两特征图,可以看出在2D下,不同特征组合下不同类别的分布,以及不同特征组合对类别的区分能力。
函数原型:seaborn.pairplot(data, hue=None, hue_order=None, palette=None, vars=None, x_vars=None, y_vars=None, kind=’scatter’, diag_kind=’hist’, markers=None, size=2.5, aspect=1, dropna=True, plot_kws=None, diag_kws=None, grid_kws=None)¶
常用参数介绍:
data:必不可少的数据
hue: 用一个特征来显示图像上的颜色,类似于打标签
marker: 每个label的显示图像变动,有的是三角,有的是原点
vars:只留几个特征两两比较
博客解释:pairplot()应用
官方函数解释:http://seaborn.pydata.org/generated/seaborn.pairplot.html
sns.boxplot()获取不同类别在不同特征上的分布差异情况
sns.boxplot(x='target', y=col, saturation=0.5,palette='pastel', data=iris_all)#saturation控制颜色深浅
matplotlib绘制3D图
matplotlib模块数据可视化-3D图
##逻辑回归的三分类问题:
对于三分类问题,logistic regression会构建三个逻辑回归模型,且用clf.coef_返回模型参数时返回的是三组模型的参数。
例如: