欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

用python的seaborn畫(huà)數(shù)值箱型圖

 更新時(shí)間:2022年01月16日 09:19:27   作者:林老頭ss  
大家好,本篇文章主要講的是用python的seaborn畫(huà)數(shù)值箱型圖,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下

 一、概念介紹

箱型圖(box-plot),又稱(chēng)為箱線圖,盒型圖,盒須圖。在數(shù)據(jù)探索階段或者描述性分析過(guò)程中,我們常常用于展示多類(lèi)連續(xù)型數(shù)據(jù)的數(shù)值分布情況,便于類(lèi)間對(duì)比和快速識(shí)別異常值。

在一幅箱型圖中,一個(gè)連續(xù)數(shù)值序列構(gòu)成一個(gè)盒子,如下所示。

每一個(gè)盒子主要展示的是數(shù)據(jù)的上四分位數(shù)Q1(25%),中位數(shù)(50%),下四分位數(shù)Q3(75%)。劃分異常值的界限我們稱(chēng)為上下極限,其離Q1,Q3分別是1.5IQR(IQR=Q3-Q1,稱(chēng)作四分位距)的距離,在上下極限之外的點(diǎn),我們稱(chēng)為異常點(diǎn)。異常值在不同場(chǎng)景中受到不同的重視,如果是要研究目標(biāo)群體的薪資水平,我們常常關(guān)注中位數(shù)和IQR,而不關(guān)注異常值。

二、數(shù)據(jù)展示

        借助爬蟲(chóng)技術(shù),我們?cè)谀硞€(gè)時(shí)間的boss直聘首頁(yè)隨機(jī)獲取了八個(gè)城市的三類(lèi)檢索詞(數(shù)據(jù)分析師、數(shù)據(jù)挖掘工程師、算法工程師)的職位發(fā)布信息。一共得到的excel表如下所示。

每一個(gè)表內(nèi)的數(shù)據(jù)如下:

(其中平均月薪的計(jì)算是簡(jiǎn)單地通過(guò)區(qū)間中位數(shù)*薪期/12得到,如8k-10k*16薪,則平均月薪為12000.

 三、數(shù)據(jù)導(dǎo)入

 只需要導(dǎo)入每一個(gè)表格中的 職位名稱(chēng)  和 平均月薪  列。

import pandas as pd
city8_fullname = ['北京','重慶','武漢','深圳','南京','廣州','成都','上海']
job_type = ['數(shù)據(jù)分析師','數(shù)據(jù)挖掘工程師','算法工程師']
salary_dic = {}
for i in range(len(city8_fullname)):
    df = pd.DataFrame(pd.read_excel('./Boss直聘數(shù)據(jù)-八個(gè)城市/Boss直聘-'+city8_fullname[i]+'.xls'))
    salary_dic[city8_fullname[i]] = df[['職位名稱(chēng)','平均月薪']]
    salary_dic[city8_fullname[i]]['城市'] = pd.Series([city8_fullname[i]]*df.shape[0])
## 整合成畫(huà)圖需要的格式
salary = salary_dic[city8_fullname[0]]
for i in range(1,8):
    salary = pd.concat([salary,salary_dic[city8_fullname[i]]],ignore_index="true")

 得到的數(shù)據(jù)結(jié)構(gòu)為:

  四、畫(huà)圖

 這里,我們使用的是python語(yǔ)言,借助seaborn包完成。

 
import matplotlib.pyplot as plt
import seaborn as sns
 
# 中文與正負(fù)號(hào)顯示設(shè)置
plt.rcParams['font.sans-serif'] = 'Microsoft YaHei'
plt.rcParams['axes.unicode_minus'] = False
# Draw
plt.figure(figsize=(14,8), dpi= 100)
sns.boxplot(x='城市', y='平均月薪', data=salary, hue='職位名稱(chēng)')
sns.stripplot(x='城市', y='平均月薪', data=salary, color='black', size=2, jitter=1)
for i in range(len(salary['城市'].unique())-1):
    plt.vlines(i+.5, 10, 45, linestyles='solid', colors='gray', alpha=0.2)
plt.title('八大城市對(duì)口專(zhuān)業(yè)薪資分布', fontsize=20)
plt.legend(title='職位類(lèi)型')
plt.xticks(fontsize=14)
plt.xlabel('城市',fontsize=16)
plt.ylabel('平均月薪',fontsize=16)
plt.yticks(fontsize=14)
plt.savefig(r'./繪圖結(jié)果/薪資-薪資分布-箱線圖.png')

sns.stripplot------用于畫(huà)分布散點(diǎn)圖(如果是大樣本的話不適用,但有一種一半密度一半箱型的類(lèi)別,可以避免散點(diǎn)覆蓋的情況 )

plt.vlines-----畫(huà)輔助線

hue-----可以理解為有多少組,在這里相當(dāng)于出去城市外的第二個(gè)維度的分類(lèi)。

結(jié)果圖為:

 上圖中,我們是在箱型圖的基礎(chǔ)上加了散點(diǎn)的,目的在于了解各城市薪資的數(shù)值集中分布情況。

總結(jié)

到此這篇關(guān)于用python的seaborn畫(huà)數(shù)值箱型圖的文章就介紹到這了,更多相關(guān)python seaborn箱型圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

  • Python使用描述器實(shí)現(xiàn)ORM模型的方法詳解

    Python使用描述器實(shí)現(xiàn)ORM模型的方法詳解

    這篇文章主要為大家詳細(xì)介紹了Python描述器實(shí)現(xiàn)ORM模型,使用數(shù)據(jù)庫(kù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • Python實(shí)現(xiàn)的樸素貝葉斯算法經(jīng)典示例【測(cè)試可用】

    Python實(shí)現(xiàn)的樸素貝葉斯算法經(jīng)典示例【測(cè)試可用】

    這篇文章主要介紹了Python實(shí)現(xiàn)的樸素貝葉斯算法,結(jié)合實(shí)例形式詳細(xì)分析了Python實(shí)現(xiàn)與使用樸素貝葉斯算法的具體操作步驟與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2018-06-06
  • Python編程實(shí)現(xiàn)雙擊更新所有已安裝python模塊的方法

    Python編程實(shí)現(xiàn)雙擊更新所有已安裝python模塊的方法

    這篇文章主要介紹了Python編程實(shí)現(xiàn)雙擊更新所有已安裝python模塊的方法,涉及Python針對(duì)模塊操作命令的相關(guān)封裝與調(diào)用技巧,需要的朋友可以參考下
    2017-06-06
  • python多核處理器算力浪費(fèi)問(wèn)題解決

    python多核處理器算力浪費(fèi)問(wèn)題解決

    這篇文章主要為大家介紹了python多核處理器算力浪費(fèi)現(xiàn)象的處理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • 詳解Python如何實(shí)現(xiàn)Excel數(shù)據(jù)讀取和寫(xiě)入

    詳解Python如何實(shí)現(xiàn)Excel數(shù)據(jù)讀取和寫(xiě)入

    這篇文章主要為大家詳細(xì)介紹了python如何實(shí)現(xiàn)對(duì)EXCEL數(shù)據(jù)進(jìn)行讀取和寫(xiě)入,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • PyQt5+QtChart實(shí)現(xiàn)繪制區(qū)域圖

    PyQt5+QtChart實(shí)現(xiàn)繪制區(qū)域圖

    QChart是一個(gè)QGraphicScene中可以顯示的QGraphicsWidget。本文將利用QtChart實(shí)現(xiàn)區(qū)域圖的繪制,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-12-12
  • Python中的上下文管理器相關(guān)知識(shí)詳解

    Python中的上下文管理器相關(guān)知識(shí)詳解

    這篇文章主要介紹了Python中的上下文管理器相關(guān)知識(shí)詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09
  • python庫(kù)umap有效地揭示高維數(shù)據(jù)的結(jié)構(gòu)和模式初探

    python庫(kù)umap有效地揭示高維數(shù)據(jù)的結(jié)構(gòu)和模式初探

    這篇文章主要介紹了python庫(kù)umap有效地揭示高維數(shù)據(jù)的結(jié)構(gòu)和模式初探,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • 使用python判斷你是青少年還是老年人

    使用python判斷你是青少年還是老年人

    今天來(lái)給大家講講python中最基本的 if 條件語(yǔ)句,這幾乎是所有編程語(yǔ)言中都存在的語(yǔ)句,只是語(yǔ)法結(jié)構(gòu)稍有不同。這篇文章給大家分享使用python判斷你是青少年還是老年人,感興趣的朋友一起看看吧
    2018-11-11
  • 最新評(píng)論