使用sklearn進行數據挖掘系列文章:html
sklearn是比較流行的機器學習工具包,想必不少人都或多或少使用過,但完整的去處理數據挖掘的流程可能還須要去增強。本文將根據實際案例,利用sklearn進行一次完整的數據挖掘案例分析,經過本文的學習,將會對數據挖掘流程進行了解,以及機器學習算法的使用,模型的調參等,但願對你有幫助。
使用的數據爲加利福尼亞的房價數據,數據來自加利福尼亞州人口普查,收錄了20640條樣本。數據包含的屬性有 longitude,latitude,housing_median_age,total_rooms,total_bedrooms,population,households(家庭人數),median_income,median_house_value,ocean_proximity,其中mdeia_houese_value是咱們的目標(須要預測)變量。python
首先使用pandas
加載數據git
import pandas as pd def load_housing_data(): return pd.read_csv('housing.csv')
使用pandas提供的head
方法查看數據算法
housing = load_housing_data() housing.head
從圖中能夠看出,本數據集總共包含10個特徵,9個爲數值類型,1個爲標籤類型。使用housing.info()
方法可以查看數據集各個特徵的詳細信息
機器學習
本數據集包含20640個樣本,算是一個比較小的數據集了。total_bedrooms
只有20433個非空樣本,也就意味着有207個樣本這一特徵數據缺失。使用describe()
方法查看數據集的詳細信息。
強大的pandas給出了數值類型特徵的數值信息,std
是標準差,表示數據集的分佈廣度;三個百分數2五、50、75
是四分位點,熟悉箱線圖的朋友應該知道。例如housing_median_age
這一特徵,大約有25%的樣本小於1八、50%的小於29。
對於標稱類型特徵查看其取值類型
人們對於數值或許不夠敏感,從上面的系列表格看不出數據的特色,那麼咱們能夠經過繪製直方圖的形式將特徵的數值分佈展現出來工具
import matplotlib.pyplot as plt housing.hist(bins=50,figsize=(15,10))#bins 柱子個數 #plt.savefig('a.jpg') #保存圖片 plt.show()
從上圖中咱們能夠得出如下結論:學習
media house value
是咱們的目標屬性。