段聰聰 柴世一
【摘 要】本文基于python來進行對kaggle數(shù)據(jù)集庫中的數(shù)據(jù)集來進行數(shù)據(jù)分析,在這個大數(shù)據(jù)時代,我們的生活早已成為一個數(shù)據(jù)化的生活,文章的目的是在于用現(xiàn)有的計算機科學技術(shù)來預示通過數(shù)據(jù)分析來進行預判的可行性。
【關(guān)鍵詞】python程序設(shè)計與開發(fā);數(shù)據(jù)分析;特征選擇
中圖分類號: TP311.13文獻標識碼: A文章編號: 2095-2457(2019)08-0106-001
DOI:10.19694/j.cnki.issn2095-2457.2019.08.044
【Abstract】This paper is based on Python to analyze the data set in kaggle databases.In this big data era, our life has already become a data life. The purpose of this paper is to use the existing computer science technology to predict the feasibility of data analysis.
【Key words】Python Programming and development;Data analysis;Feature selection
1 簡介
數(shù)據(jù)集名稱為iris.csv,該數(shù)據(jù)由kaggle網(wǎng)站獲取而來,數(shù)據(jù)集的規(guī)模為150*6,總計150條數(shù)據(jù),數(shù)據(jù)信息分為6列,列屬性名分別為Id,SepaLength,SepalWidth,PetalLength,PetalWidth,Species.
我們希望利用python語言對數(shù)據(jù)集中的特征來進行分析,最后可以根據(jù)分析結(jié)果來較為準確的根據(jù)鳶尾花四個屬性判斷出其所屬類別。
2 數(shù)據(jù)處理
查看數(shù)據(jù)集
Id顯示為整數(shù)類型,之后的是個花瓣花萼長寬均為小數(shù)點后一位的小數(shù)類型,而Species則為字符串類型,對應著某一行數(shù)據(jù)所屬鳶尾花的類別
從數(shù)據(jù)集中可看出
花萼長度最小值4.30, 最大值7.90, 均值5.84, 中位數(shù)5.80, 右偏
花萼寬度最小值2.00, 最大值4.40, 均值3.05, 中位數(shù)3.00, 右偏
花瓣長度最小值1.00, 最大值6.90, 均值3.76, 中位數(shù)4.35, 左偏
花瓣寬度最小值0.10, 最大值2.50, 均值1.20, 中位數(shù)1.30, 左偏
按中位數(shù)來度量:花萼長度大于花瓣長度大于花萼寬度大于花瓣寬度
當該條數(shù)據(jù)鳶尾花類別為setosa時,我們讓它在圖中的點的顏色為紅色,versicolor為綠色,virginica為藍色。通過這樣的設(shè)置可以在散點圖中明顯的看出三種種類鳶尾花與屬性之間的關(guān)系??紤]到有四種屬性,我們讓他們來兩兩相交,選擇了四組屬性來進行測試:分別是品種與花萼長度寬度,品種與花瓣長度寬度,品種與花瓣寬度花萼寬度,品種與花瓣長度花萼長度,這是四組具有參考價值的屬性值。
實驗結(jié)果顯示山鳶尾的屬性值和雜色鳶尾,維吉尼亞鳶尾范圍有明顯的差距,而雜色鳶尾和維吉尼亞鳶尾存在屬性值范圍的重疊。
接下來我們想對于鳶尾花三種種類的四個屬性的值范圍有一個較為直觀的顯示,于是我們采用繪制四個圖形的方式來進行顯示,以ID為X軸(因為在數(shù)據(jù)集中ID屬性的值前50個、中間50個、最后50個分別代表不同的鳶尾花),以四個屬性為Y軸,最后以不同的顏色來明確區(qū)分三種鳶尾花的四個屬性值的范圍。
使用seaborn模塊的relplot方法來繪制圖形,函數(shù)中的kind屬性值設(shè)置為line表示我們要繪制的是折線圖。然后傳入X和Y軸的參數(shù)以及數(shù)據(jù)集對象。
實驗結(jié)果顯示在花瓣長度和寬度上,山鳶尾的屬性范圍與其他兩種鳶尾花的屬性范圍有非常明顯的區(qū)分,處于一個較小的范圍內(nèi),花瓣與分辨山鳶尾有較強的相關(guān)性。而在花萼的折線圖中我們看出,雜色鳶尾和維吉尼亞鳶尾沒有很好的區(qū)分出,這表示,花萼不能很好作為參數(shù)來區(qū)分他們,相比較而言,花瓣的屬性值更有利于區(qū)分他們。
首先我們將數(shù)據(jù)集按照8:2的比例隨機分為訓練集, 測試集。我們使用SVM模型來對數(shù)據(jù)集進行一個預測。
由此可見,該數(shù)據(jù)集根據(jù)SVM模型來判斷種類,正確率高達100%,可見,鳶尾花的種類和其四個屬性值之間存在著一定的相關(guān)性,到了這一步我們也可以做出結(jié)論,的確可以根據(jù)鳶尾花的四個屬性判斷其種類,我們所建立的SVM模型也證實了這一點。
為了驗證上一步的準確性,我們想用兩個模型進行驗證結(jié)論,在構(gòu)建決策樹模型后的準確率也是100%,我們可以得出結(jié)論:可以通過鳶尾花的四個屬性值來判斷其種類。
3 分析結(jié)果
回到我們最初的目標,我們希望通過鳶尾花的四個屬性值來判別其種類,我們通過散點圖來進行可視化分析,根據(jù)四種屬性的交叉顯示,我們得出,鳶尾花的類別與屬性之間存在一定的關(guān)系且山鳶尾的屬性值和雜色鳶尾,維吉尼亞鳶尾范圍有明顯的差距,而雜色鳶尾和維吉尼亞鳶尾存在屬性值范圍的重疊。
之后通過折線圖更加具體地顯示三種鳶尾花的屬性值范圍情況,在花瓣長度寬度上,山鳶尾的屬性范圍與其他兩種鳶尾花的屬性范圍有非常明顯的區(qū)分,處于一個較小的范圍內(nèi),花瓣與分辨山鳶尾有較強的相關(guān)性。而在花萼的折線圖中我們看出,雜色鳶尾和維吉尼亞鳶尾沒有很好的區(qū)分出,這表示對于這兩種鳶尾花而言,花瓣的屬性值更有利于區(qū)分他們。
4 結(jié)束語
由于鳶尾花數(shù)據(jù)集的數(shù)據(jù)量太少,這導致我們的訓練集遠遠不夠,在調(diào)節(jié)隨機數(shù)參數(shù)的情況下才將模型的正確率達到了100%,解決的方法是:使用小數(shù)據(jù)集訓練卷積神經(jīng)網(wǎng)絡并加以微調(diào),微調(diào)對于沒有足夠訓練樣本時初始化深度網(wǎng)絡參數(shù)的一個有效的方法,一般都會選取與之具有相似結(jié)構(gòu)的網(wǎng)絡模型訓練結(jié)果進行微調(diào)。
【參考文獻】
[1]郭華,陸平.利用python語言對室內(nèi)熱舒適環(huán)境進行數(shù)據(jù)分析[J].建筑與文化,2018(12).
[2]周洪斌.基于Python的豆瓣圖書評論數(shù)據(jù)獲取與可視化分析[J].沙洲職業(yè)工學院學報2018,21(04).
[3]翟高粵.基于Python的數(shù)據(jù)分析概述[J].甘肅科技縱橫,2018,47(11).
[4]葉惠仙.Python在學院招生數(shù)據(jù)分析中的應用[J].計算機時代,2018(11).
[5]王濤.基于Pyhton的軟件技術(shù)人才招聘信息分析與實現(xiàn)——以前程無憂為例[J].福建電腦,2018,34(11).