python視覺化(5)——直方圖
2022-01-22由 愛資料的小司機 發表于 農業
頻數分佈直方圖怎麼做
我們一般使用散點圖檢視資料的分佈,我們還可以使用直方圖來說明,透過圖形的長相,就可以快速的判斷資料是否近似服從正態分佈。
在統計學中,很多假設條件是在符合正態分佈情況下得,這也是為什麼我們要探究資料是否符合正態分佈的原因。最常用的就是透過直方圖來定性的判定資料的分佈情況,這尤其顯得重要。
Python中如何繪製一個直方圖。
python透過調研matplotlib包中的hist函式來生成直方圖的,
繪圖之前,我們先來看一下hist函式的引數含義及使用方法:
plt。hist(x, bins= 10, range= None, normed= False, weights= None, cumulative= False, bottom= None, histtype= ‘bar’, align= ‘mid’, orientation= ‘vertical’, rwidth= None, log= False, color= None, label= None, stacked= False)
x:指定要繪製直方圖的資料;
bins:指定直方圖條形的個數;
range:指定直方圖資料的上下界,預設包含繪圖資料的最大值和最小值;
normed:是否將直方圖的頻數轉換成頻率;
weights:該引數可為每一個數據點設定權重;
cumulative:是否需要計算累計頻數或頻率;
bottom:可以為直方圖的每個條形新增基準線,預設為0;
histtype:指定直方圖的型別,預設為bar,除此還有’barstacked’, ‘step’, ‘stepfilled’;
align:設定條形邊界值的對其方式,預設為mid,除此還有’left’和’right’;
orientation:設定直方圖的擺放方向,預設為垂直方向;
rwidth:設定直方圖條形寬度的百分比;
log:是否需要對繪圖資料進行log變換;
color:設定直方圖的填充色;
label:設定直方圖的標籤,可透過legend展示其圖例;
stacked:當有多個數據時,是否需要將直方圖呈堆疊擺放,預設水平擺放;
載入第三方庫,匯入泰坦尼克號的資料,選取年齡資料不為空
頻數直方圖:
生成圖:
頻率累積直方圖:
生成圖:
我們使用直方圖檢視資料是否符合正態分佈,需要和正態分佈曲線進行比較;
生成圖:
從直方圖的展現來看,乘客的年齡分佈與理論正態分佈曲線存在一些差異,說明
不服從正態分佈。
二元直方圖的繪製
如果想對比的話,可以透過
兩個hist
將不同性別的直方圖繪製到一張圖內,選擇對比男女乘客的年齡分佈情況
生成圖如下:
從圖中可以看出,不同年齡組內幾乎都是
男性乘客比女性乘客要多
;
另外,男女性別的年齡組
分佈幾乎一致
。