農林漁牧網

您現在的位置是:首頁 > 農業

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:當有多個數據時,是否需要將直方圖呈堆疊擺放,預設水平擺放;

載入第三方庫,匯入泰坦尼克號的資料,選取年齡資料不為空

python視覺化(5)——直方圖

頻數直方圖:

python視覺化(5)——直方圖

生成圖:

python視覺化(5)——直方圖

頻率累積直方圖:

python視覺化(5)——直方圖

生成圖:

python視覺化(5)——直方圖

我們使用直方圖檢視資料是否符合正態分佈,需要和正態分佈曲線進行比較;

python視覺化(5)——直方圖

生成圖:

python視覺化(5)——直方圖

從直方圖的展現來看,乘客的年齡分佈與理論正態分佈曲線存在一些差異,說明

不服從正態分佈。

二元直方圖的繪製

如果想對比的話,可以透過

兩個hist

將不同性別的直方圖繪製到一張圖內,選擇對比男女乘客的年齡分佈情況

python視覺化(5)——直方圖

生成圖如下:

python視覺化(5)——直方圖

從圖中可以看出,不同年齡組內幾乎都是

男性乘客比女性乘客要多

另外,男女性別的年齡組

分佈幾乎一致