基于鸢尾花(iris)数据集的回归分类实践——二分类及多分类

鸢尾花数据集概括。
本次我们选择鸢花数据(iris)进行方法的尝试训练,该数据集一共包含5个变量,其中4个特征变量,1个目标分类变量。共有150个样本,目标变量为 花的类别 其都属于鸢尾属下的三个亚属,分别是山鸢尾 (Iris-setosa),变色鸢尾(Iris-versicolor)和维吉尼亚鸢尾(Iris-virginica)。包含的三种鸢尾花的四个特征,分别是花萼长度(cm)、花萼宽度(cm)、花瓣长度(cm)、花瓣宽度(cm),这些形态特征在过去被用来识别物种。
在这里插入图片描述
代码部分

导入库

##  基础函数库
import numpy as np 
import pandas as pd

## 绘图函数库
import matplotlib.pyplot as plt
import seaborn as sns

数据读取/载入

## 我们利用 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格式

浏览数据

## 利用.info()查看数据的整体信息
iris_features.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 150 entries, 0 to 149
Data columns (total 4 columns):
 #   Column             Non-Null Count  Dtype  
---  ------             --------------  -----  
 0   sepal length (cm)  150 non-null    float64
 1   sepal width (cm)   150 non-null    float64
 2   petal length (cm)  150 non-null    float64
 3   petal width (cm)   150 non-null    float64
dtypes: float64(4)
memory usage: 4.8 KB
## 利用.head() 查看头部数据
iris_features.head()
	sepal length (cm)	sepal width (cm)	petal length (cm)	petal width (cm)
0	5.1	                3.5	                1.4	                0.2
1	4.9	                3.0	                1.4	                0.2
2	4.7	                3.2	                1.3	                0.2
3	4.6	                3.1	                1.5	                0.2
4	5.0	                3.6	                1.4	                0.2
# 利用.tail()尾部 查看头部数据
iris_features.tail()
        sepal length (cm)	sepal width (cm)	petal length (cm)	petal width (cm)
145	    6.7	                3.0	                5.2	                2.3
146	    6.3	                2.5	                5.0	                1.9
147	  	6.5	                3.0	                5.2	                2.0
148	    6.2	                3.4	                5.4	                2.3
149	    5.9	                3.0	                5.1	                1.8
## 其对应的类别标签为,其中0,1,2分别代表'setosa', 'versicolor', 'virginica'三种不同花的类别。
iris_target
array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
   1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
   1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
   2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
   2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2])
## 利用value_counts函数查看每个类别数量
pd.Series(iris_target).value_counts()
2    50
1    50
0    50
dtype: int64
## 对于特征进行一些统计描述
iris_features.describe()
        sepal length (cm)	sepal width (cm)	petal length (cm)	petal width (cm)
count	150.000000	        150.000000	        150.000000	        150.000000
mean	5.843333	        3.057333	        3.758000	        1.199333
std	    0.828066	        0.435866	        1.765298	        0.762238
min	    4.300000	        2.000000	        1.000000	        0.100000
25%	    5.100000	        2.800000	        1.600000	        0.300000
50%	    5.800000	        3.000000	        4.350000	        1.300000
75%   	6.400000	        3.300000	        5.100000	        1.800000
max	    7.900000	        4.400000	        6.900000	        2.500000

可视化

## 合并标签和特征信息
iris_all = iris_features.copy(
  • 6
    点赞
  • 82
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值