日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當(dāng)前位置:首頁(yè) > 科技  > 軟件

極速數(shù)據(jù)可視化!七個(gè)Pandas繪圖函數(shù)助你事半功倍

來(lái)源: 責(zé)編: 時(shí)間:2024-01-04 09:33:41 441觀看
導(dǎo)讀一、簡(jiǎn)介在使用Pandas分析數(shù)據(jù)時(shí),會(huì)使用Pandas函數(shù)來(lái)過(guò)濾和轉(zhuǎn)換列,連接多個(gè)數(shù)據(jù)幀中的數(shù)據(jù)等操作。但是,生成圖表——將數(shù)據(jù)在數(shù)據(jù)幀中可視化——通常比僅僅查看數(shù)字更有幫助。Pandas具有幾個(gè)繪圖函數(shù),可以使用它們快速輕

一、簡(jiǎn)介

在使用Pandas分析數(shù)據(jù)時(shí),會(huì)使用Pandas函數(shù)來(lái)過(guò)濾和轉(zhuǎn)換列,連接多個(gè)數(shù)據(jù)幀中的數(shù)據(jù)等操作。bDL28資訊網(wǎng)——每日最新資訊28at.com

但是,生成圖表——將數(shù)據(jù)在數(shù)據(jù)幀中可視化——通常比僅僅查看數(shù)字更有幫助。bDL28資訊網(wǎng)——每日最新資訊28at.com

Pandas具有幾個(gè)繪圖函數(shù),可以使用它們快速輕松地實(shí)現(xiàn)數(shù)據(jù)可視化。我們將在本教程中介紹這些函數(shù)。bDL28資訊網(wǎng)——每日最新資訊28at.com

【示例代碼】:https://github.com/balapriyac/python-data-analysis/blob/main/pandas-plotting-fns/pandas_plotting_functions.ipynbbDL28資訊網(wǎng)——每日最新資訊28at.com

二、創(chuàng)建Pandas數(shù)據(jù)幀

首先創(chuàng)建一個(gè)用于分析的示例數(shù)據(jù)幀。我們將創(chuàng)建一個(gè)名為df_employees的數(shù)據(jù)幀,其中包含員工記錄。bDL28資訊網(wǎng)——每日最新資訊28at.com

我們將使用Faker和NumPy的隨機(jī)模塊來(lái)填充數(shù)據(jù)幀,生成200條記錄。bDL28資訊網(wǎng)——每日最新資訊28at.com

注意:如果你的開(kāi)發(fā)環(huán)境中沒(méi)有安裝Faker,請(qǐng)使用pip安裝:pip install Faker。bDL28資訊網(wǎng)——每日最新資訊28at.com

運(yùn)行以下代碼片段來(lái)創(chuàng)建df_employees,并向其中填充記錄:bDL28資訊網(wǎng)——每日最新資訊28at.com

import pandas as pdfrom faker import Fakerimport numpy as np# 實(shí)例化Faker對(duì)象fake = Faker()Faker.seed(27)# 為員工創(chuàng)建一個(gè)數(shù)據(jù)幀num_employees = 200departments = ['Engineering', 'Finance', 'HR', 'Marketing', 'Sales', 'IT']years_with_company = np.random.randint(1, 10, size=num_employees)salary = 40000 + 2000 * years_with_company * np.random.randn()employee_data = { 'EmployeeID': np.arange(1, num_employees + 1), 'FirstName': [fake.first_name() for _ in range(num_employees)], 'LastName': [fake.last_name() for _ in range(num_employees)], 'Age': np.random.randint(22, 60, size=num_employees), 'Department': [fake.random_element(departments) for _ in range(num_employees)], 'Salary': np.round(salary), 'YearsWithCompany': years_with_company}df_employees = pd.DataFrame(employee_data)# 顯示數(shù)據(jù)幀的頭部df_employees.head(10)

我們?cè)O(shè)置了種子以便重現(xiàn)結(jié)果。所以每次運(yùn)行此代碼,都會(huì)得到相同的記錄。bDL28資訊網(wǎng)——每日最新資訊28at.com

以下是數(shù)據(jù)幀的前幾條記錄:bDL28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片bDL28資訊網(wǎng)——每日最新資訊28at.com

df_employees.head(10)的輸出結(jié)果bDL28資訊網(wǎng)——每日最新資訊28at.com

三、Pandas繪圖函數(shù)

1. 散點(diǎn)圖

散點(diǎn)圖通常用于了解數(shù)據(jù)集中任意兩個(gè)變量之間的關(guān)系。bDL28資訊網(wǎng)——每日最新資訊28at.com

對(duì)于df_employees數(shù)據(jù)幀,讓我們創(chuàng)建一個(gè)散點(diǎn)圖來(lái)可視化員工年齡和工資之間的關(guān)系。這將幫助我們了解員工年齡和工資之間是否存在一定的相關(guān)性。bDL28資訊網(wǎng)——每日最新資訊28at.com

要繪制散點(diǎn)圖,我們可以使用plot.scatter(),如下所示:bDL28資訊網(wǎng)——每日最新資訊28at.com

# 散點(diǎn)圖:年齡與工資df_employees.plot.scatter(x='Age', y='Salary', title='Scatter Plot: Age vs Salary', xlabel='Age', ylabel='Salary', grid=True)

圖片bDL28資訊網(wǎng)——每日最新資訊28at.com

對(duì)于此示例數(shù)據(jù)幀,我們并未看到員工年齡和工資之間的任何相關(guān)性。bDL28資訊網(wǎng)——每日最新資訊28at.com

2. 折線圖

折線圖適用于識(shí)別連續(xù)變量(通常是時(shí)間或類似刻度)上的趨勢(shì)和模式。bDL28資訊網(wǎng)——每日最新資訊28at.com

在創(chuàng)建df_employees數(shù)據(jù)幀時(shí),我們已經(jīng)定義了員工在公司工作年限與工資之間的線性關(guān)系。因此,讓我們看一下顯示工作年限與平均工資變化的折線圖。bDL28資訊網(wǎng)——每日最新資訊28at.com

我們先按工作年限分組找到平均工資,然后使用plot.line()繪制折線圖:bDL28資訊網(wǎng)——每日最新資訊28at.com

# 折線圖:平均工資隨工作年限的變化趨勢(shì)average_salary_by_experience = df_employees.groupby('YearsWithCompany')['Salary'].mean()df_employees['AverageSalaryByExperience'] = df_employees['YearsWithCompany'].map(average_salary_by_experience)df_employees.plot.line(x='YearsWithCompany', y='AverageSalaryByExperience', marker='o', linestyle='-', title='Average Salary Trend Over Years of Experience', xlabel='Years With Company', ylabel='Average Salary', legend=False, grid=True)

圖片圖片bDL28資訊網(wǎng)——每日最新資訊28at.com

由于我們選擇使用員工在公司工作年限的線性關(guān)系來(lái)填充薪資字段,因此可以清晰地看到折線圖反映了這一點(diǎn)。bDL28資訊網(wǎng)——每日最新資訊28at.com

3. 直方圖

可以使用直方圖來(lái)可視化連續(xù)變量的分布情況,方法是將數(shù)值劃分成區(qū)間或分段,并顯示每個(gè)分段中的數(shù)據(jù)點(diǎn)數(shù)量。bDL28資訊網(wǎng)——每日最新資訊28at.com

讓我們使用plot.hist()繪制直方圖來(lái)了解員工年齡的分布情況,如下所示:bDL28資訊網(wǎng)——每日最新資訊28at.com

# 直方圖:年齡分布df_employees['Age'].plot.hist(title='Age Distribution', bins=15)

圖片圖片bDL28資訊網(wǎng)——每日最新資訊28at.com

4. 箱形圖

箱形圖有助于了解變量的分布、擴(kuò)散情況,并用于識(shí)別異常值。bDL28資訊網(wǎng)——每日最新資訊28at.com

讓我們創(chuàng)建一個(gè)箱形圖,比較不同部門間的工資分布情況,從而對(duì)組織部的工資分布情況進(jìn)行高層次的比較。bDL28資訊網(wǎng)——每日最新資訊28at.com

箱形圖還有助于確定薪資范圍以及每個(gè)部門的有用信息,如中位數(shù)薪資和潛在的異常值等。bDL28資訊網(wǎng)——每日最新資訊28at.com

在這里,我們使用根據(jù)“部門(Department)”分組的“薪資(Salary)”列來(lái)繪制箱形圖:bDL28資訊網(wǎng)——每日最新資訊28at.com

# 箱形圖:按部門分列的薪金分布情況df_employees.boxplot(column='Salary', by='Department', grid=True, vert=False)

圖片圖片bDL28資訊網(wǎng)——每日最新資訊28at.com

從箱線圖中,我們可以看到某些部門的薪資分布比其他部門更廣泛。bDL28資訊網(wǎng)——每日最新資訊28at.com

5. 條形圖

如果想要了解變量在出現(xiàn)頻率方面的分布情況,可以使用條形圖。bDL28資訊網(wǎng)——每日最新資訊28at.com

現(xiàn)在,讓我們使用plot.bar()繪制一個(gè)條形圖來(lái)可視化員工數(shù)量:bDL28資訊網(wǎng)——每日最新資訊28at.com

# 條形圖:按部門的員工數(shù)量df_employees['Department'].value_counts().plot.bar(title='Employee Count by Department')

圖片圖片bDL28資訊網(wǎng)——每日最新資訊28at.com

6. 面積圖

面積圖通常用于可視化在連續(xù)軸或分類軸上的累積分布變量。bDL28資訊網(wǎng)——每日最新資訊28at.com

對(duì)于員工數(shù)據(jù)幀,我們可以繪制不同年齡組的累積薪資分布圖。為了將員工映射到基于年齡組的區(qū)間中,我們需要使用pd.cut()。bDL28資訊網(wǎng)——每日最新資訊28at.com

然后,我們通過(guò)“年齡組(AgeGroup)”對(duì)薪資進(jìn)行累積求和。為了得到面積圖,我們使用plot.area():bDL28資訊網(wǎng)——每日最新資訊28at.com

# 面積圖:不同年齡組的累積薪資分布df_employees['AgeGroup'] = pd.cut(df_employees['Age'], bins=[20, 30, 40, 50, 60], labels=['20-29', '30-39', '40-49', '50-59'])cumulative_salary_by_age_group = df_employees.groupby('AgeGroup')['Salary'].cumsum()df_employees['CumulativeSalaryByAgeGroup'] = cumulative_salary_by_age_groupdf_employees.plot.area(x='AgeGroup', y='CumulativeSalaryByAgeGroup', title='Cumulative Salary Distribution Over Age Groups', xlabel='Age Group', ylabel='Cumulative Salary', legend=False, grid=True)

7. 餅圖

餅圖有助于可視化各個(gè)部門在整體組織中的薪資分布比例。bDL28資訊網(wǎng)——每日最新資訊28at.com

對(duì)于我們的示例,創(chuàng)建一個(gè)餅圖來(lái)顯示組織中各個(gè)部門的薪資分布是很有意義的。bDL28資訊網(wǎng)——每日最新資訊28at.com

我們通過(guò)部門對(duì)員工的薪資進(jìn)行分組,然后使用plot.pie()來(lái)繪制餅圖:bDL28資訊網(wǎng)——每日最新資訊28at.com

# 餅圖:按部門劃分的薪資分布df_employees.groupby('Department')['Salary'].sum().plot.pie(title='Department-wise Salary Distribution', autopct='%1.1f%%')

四、總結(jié)

以上就是7個(gè)用于快速數(shù)據(jù)可視化的Pandas繪圖函數(shù)。也可以嘗試使用matplotlib和seaborn生成更漂亮的圖表。但是對(duì)于快速數(shù)據(jù)可視化,上述這些函數(shù)非常方便。bDL28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-57406-0.html極速數(shù)據(jù)可視化!七個(gè)Pandas繪圖函數(shù)助你事半功倍

聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com

上一篇: Go Lang Fiber介紹

下一篇: 五個(gè)大幅提升開(kāi)發(fā)效率的VS Code技巧

標(biāo)簽:
  • 熱門焦點(diǎn)
  • vivo TWS Air開(kāi)箱體驗(yàn):真輕 臻好聽(tīng)

    在vivo S15系列新機(jī)的發(fā)布會(huì)上,vivo的最新款真無(wú)線藍(lán)牙耳機(jī)vivo TWS Air也一同發(fā)布,本次就這款耳機(jī)新品給大家?guī)?lái)一個(gè)簡(jiǎn)單的分享。外包裝盒上,vivo TWS Air保持了vivo自家產(chǎn)
  • Rust中的高吞吐量流處理

    作者 | Noz編譯 | 王瑞平本篇文章主要介紹了Rust中流處理的概念、方法和優(yōu)化。作者不僅介紹了流處理的基本概念以及Rust中常用的流處理庫(kù),還使用這些庫(kù)實(shí)現(xiàn)了一個(gè)流處理程序
  • 分享六款相見(jiàn)恨晚的PPT模版網(wǎng)站, 祝你做出精美的PPT!

    1、OfficePLUSOfficePLUS網(wǎng)站旨在為全球Office用戶提供豐富的高品質(zhì)原創(chuàng)PPT模板、實(shí)用文檔、數(shù)據(jù)圖表及個(gè)性化定制服務(wù)。優(yōu)點(diǎn):OfficePLUS是微軟官方網(wǎng)站,囊括PPT模板、Word模
  • 只需五步,使用start.spring.io快速入門Spring編程

    步驟1打開(kāi)https://start.spring.io/,按照屏幕截圖中的內(nèi)容創(chuàng)建項(xiàng)目,添加 Spring Web 依賴項(xiàng),并單擊“生成”按鈕下載 .zip 文件,為下一步做準(zhǔn)備。請(qǐng)?jiān)谶M(jìn)入步驟2之前進(jìn)行解壓。圖
  • 一個(gè)注解實(shí)現(xiàn)接口冪等,這樣才優(yōu)雅!

    場(chǎng)景碼猿慢病云管理系統(tǒng)中其實(shí)高并發(fā)的場(chǎng)景不是很多,沒(méi)有必要每個(gè)接口都去考慮并發(fā)高的場(chǎng)景,比如添加住院患者的這個(gè)接口,具體的業(yè)務(wù)代碼就不貼了,業(yè)務(wù)偽代碼如下:圖片上述代碼有
  • 為什么你不應(yīng)該使用Div作為可點(diǎn)擊元素

    按鈕是為任何網(wǎng)絡(luò)應(yīng)用程序提供交互性的最常見(jiàn)方式。但我們經(jīng)常傾向于使用其他HTML元素,如 div span 等作為 clickable 元素。但通過(guò)這樣做,我們錯(cuò)過(guò)了許多內(nèi)置瀏覽器的功能。
  • 簽約井川里予、何丹彤,單視頻點(diǎn)贊近千萬(wàn),MCN黑馬永恒文希快速崛起!

    來(lái)源:視聽(tīng)觀察永恒文希傳媒作為一家MCN公司,說(shuō)起它的名字來(lái),可能大家會(huì)覺(jué)得有點(diǎn)兒陌生,但是說(shuō)出來(lái)下面一串的名字之后,或許大家就會(huì)感到震驚,原來(lái)這么多網(wǎng)紅,都簽約這家公司了。根
  • 東方甄選單飛:有些鳥(niǎo)注定是關(guān)不住的

    作者:彭寬鴻來(lái)源:華爾街科技眼‍‍‍‍‍‍‍‍‍‍東方甄選創(chuàng)始人俞敏洪帶隊(duì)的“7天甘肅行”直播活動(dòng)已在近日順利收官。成立后一
  • iQOO Neo8 Pro評(píng)測(cè):旗艦雙芯加持 最強(qiáng)性能游戲旗艦

    【Techweb評(píng)測(cè)】去年10月,iQOO推出了一款Neo7手機(jī),該機(jī)搭載了聯(lián)發(fā)科天璣9000+,配備獨(dú)顯芯片Pro+,帶來(lái)了同價(jià)位段最佳的游戲體驗(yàn),一經(jīng)上市便受到了諸多用
Top 主站蜘蛛池模板: 阳东县| 瑞昌市| 元谋县| 和平区| 珲春市| 江西省| 泸溪县| 横峰县| 九江县| 重庆市| 定兴县| 太仆寺旗| 武乡县| 石阡县| 中阳县| 福鼎市| 池州市| 松滋市| 阜南县| 界首市| 大冶市| 永川市| 安义县| 洪洞县| 永定县| 河东区| 启东市| 恩施市| 青浦区| 高清| 钟祥市| 茶陵县| 小金县| 中阳县| 集安市| 龙胜| 徐州市| 喜德县| 桦甸市| 南昌市| 集贤县|