python鸢尾花数据集_鸢尾花经典机器学习分类Python实现案例
作者|Nature
出品|AI機器思維
由Fisher在1936年整理的Iris 鳶尾花數據集是一個經典數據集,在統計學習和機器學習領域都經常被用作示例。
其數據集變量包含4個特征(Sepal.Length(花萼長度)、Sepal.Width(花萼寬度)、Petal.Length(花瓣長度)、Petal.Width(花瓣寬度))這四個變量預測鳶尾花的分類,其特征值都為正浮點數,單位為厘米。預測變量目標值為鳶尾花的分類為三類:Iris Setosa(山鳶尾)、Iris Versicolour(雜色鳶尾),Iris Virginica(維吉尼亞鳶尾)。
Iris數據集內包含 3 類共 150 條記錄,每類各 50 個數據,每條記錄都有 4 項特征:花萼長度、花萼寬度、花瓣長度、花瓣寬度,可以通過這4個特征預測鳶尾花卉屬于(iris-setosa, iris-versicolour, iris-virginica)中的哪一品種。
int類型, 對三種分類做編號如下:
0 :Iris setosa(山鳶尾)
1 :Iris versicolor(雜色鳶尾)
2 :Iris virginica(維吉尼亞鳶尾)
第一步:對iris數據集導入,進行探索性分析,通過語言print(v_iris.target)查看花卉總類
運行結果如下,輸出的結果包含150個數值,其中共有三種可能的取值(0、1、2),分別代表三種不同的鳶尾花卉。
對數據集查看分析,通過訪問v_iris的target_names屬性,可以了解每個值所代表的花卉類別。
運行后結果顯示三類花卉名字為:
為了更好地理解這個數據集,可以使用matplotlib進行可視化圖形顯示,用三種顏色表示三種花卉,并繪制一幅散點圖。x表示萼片的長度,y軸表示萼片的寬度。
程序如下:
運行結果如下圖:
紫色、藍色和黃色分別代表了山鳶尾、雜色鳶尾花和維吉尼亞鳶尾。由上圖可見,紫色的點形成一簇,與其他點明顯區分開了。由此可見以萼片的長寬來進行區分可以將山鳶尾花明顯的和其他的兩類品種區分開來。
對上面程序改造,根據Petal.Length(花瓣長度)、Petal.Width(花瓣寬度)花瓣變量分類:
程序如下:
運行結果如下,下圖可以看到,使用花瓣的長和寬作為特征時,三種類別之間的區別度更明顯,得到了三個不同的簇:
上面是二維的分析,然后進行分類繪制的二維分類圖。下面通過主成分分析法(PCA)進行主成分分析,把四維減少到三維,并對得到的結果繪制為3D散點圖。
使用萼片和花瓣的測量數據來描述數據集中各個鳶尾花卉的特點scikit-learn庫的fit_transform( )函數用來降維的,它屬于PCA對象。先導入PCA模塊sklearn.decomposition,然后調用PCA( )構造函數,用n_components選項指定要降到幾維(主成分)。此處降為三維(便于繪制三維散點圖),然后調用fit_transform( )函數,傳入四維的v_Iris數據集作為參數。
程序運行后結果顯示的三維分類圖如下:
總結
以上是生活随笔為你收集整理的python鸢尾花数据集_鸢尾花经典机器学习分类Python实现案例的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: EXCEL中数字显示为E+18且尾数为0
- 下一篇: 中国大学的现实是:大学层次越低,上课越多
