国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

7個(gè)Pandas繪圖函數(shù)助力數(shù)據(jù)可視化

這篇具有很好參考價(jià)值的文章主要介紹了7個(gè)Pandas繪圖函數(shù)助力數(shù)據(jù)可視化。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

大家好,在使用Pandas分析數(shù)據(jù)時(shí),會使用Pandas函數(shù)來過濾和轉(zhuǎn)換列,連接多個(gè)數(shù)據(jù)幀中的數(shù)據(jù)等操作。但是,生成圖表將數(shù)據(jù)在數(shù)據(jù)幀中可視化通常比僅僅查看數(shù)字更有幫助。

Pandas具有幾個(gè)繪圖函數(shù),可以使用它們快速輕松地實(shí)現(xiàn)數(shù)據(jù)可視化,文中將介紹這些函數(shù)。

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

首先創(chuàng)建一個(gè)用于分析的示例數(shù)據(jù)幀,將數(shù)據(jù)幀命名為df_employees,其中包含員工記錄。我們將使用Faker和NumPy的隨機(jī)模塊來填充數(shù)據(jù)幀,生成200條記錄。

注意:如果開發(fā)環(huán)境中沒有安裝Faker,請使用pip安裝:pip install Faker。

運(yùn)行以下代碼片段來創(chuàng)建df_employees,并向其中填充記錄:

import?pandas?as?pd
from?faker?import?Faker
import?numpy?as?np

#?實(shí)例化Faker對象
fake?=?Faker()
Faker.seed(27)

#?為員工創(chuàng)建一個(gè)數(shù)據(jù)幀
num_employees?=?200
departments?=?['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)

設(shè)置種子以便重現(xiàn)結(jié)果,所以每次運(yùn)行此代碼,都會得到相同的記錄。

以下是數(shù)據(jù)幀的前幾條記錄:

7個(gè)Pandas繪圖函數(shù)助力數(shù)據(jù)可視化,Pandas,python可視化,信息可視化,pandas

df_employees.head(10)的輸出結(jié)果

二、Pandas繪圖函數(shù)

1. 散點(diǎn)圖

散點(diǎn)圖通常用于了解數(shù)據(jù)集中任意兩個(gè)變量之間的關(guān)系。對于df_employees數(shù)據(jù)幀,讓我們創(chuàng)建一個(gè)散點(diǎn)圖來可視化員工年齡和工資之間的關(guān)系。這將幫助大家了解員工年齡和工資之間是否存在一定的相關(guān)性。

要繪制散點(diǎn)圖,可以使用plot.scatter(),如下所示:

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

7個(gè)Pandas繪圖函數(shù)助力數(shù)據(jù)可視化,Pandas,python可視化,信息可視化,pandas

對于此示例數(shù)據(jù)幀,并未看到員工年齡和工資之間的任何相關(guān)性。

2. 折線圖

折線圖適用于識別連續(xù)變量(通常是時(shí)間或類似刻度)上的趨勢和模式。

在創(chuàng)建df_employees數(shù)據(jù)幀時(shí),已經(jīng)定義了員工在公司工作年限與工資之間的線性關(guān)系,觀察一下顯示工作年限與平均工資變化的折線圖。

按工作年限分組找到平均工資,然后使用plot.line()繪制折線圖:

#?折線圖:平均工資隨工作年限的變化趨勢
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)

7個(gè)Pandas繪圖函數(shù)助力數(shù)據(jù)可視化,Pandas,python可視化,信息可視化,pandas

由于選擇使用員工在公司工作年限的線性關(guān)系來填充薪資字段,因此可以清晰地看到折線圖反映了這一點(diǎn)。

3. 直方圖

可以使用直方圖來可視化連續(xù)變量的分布情況,方法是將數(shù)值劃分成區(qū)間或分段,并顯示每個(gè)分段中的數(shù)據(jù)點(diǎn)數(shù)量。

使用plot.hist()繪制直方圖來了解員工年齡的分布情況,如下所示:

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

7個(gè)Pandas繪圖函數(shù)助力數(shù)據(jù)可視化,Pandas,python可視化,信息可視化,pandas

4. 箱形圖

箱形圖有助于了解變量的分布、擴(kuò)散情況,并用于識別異常值。創(chuàng)建一個(gè)箱形圖,比較不同部門間的工資分布情況,從而對組織部的工資分布情況進(jìn)行高層次的比較。

箱形圖還有助于確定薪資范圍以及每個(gè)部門的有用信息,如中位數(shù)薪資和潛在的異常值等。

在這里,使用根據(jù)“部門(Department)”分組的“薪資(Salary)”列來繪制箱形圖:

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

7個(gè)Pandas繪圖函數(shù)助力數(shù)據(jù)可視化,Pandas,python可視化,信息可視化,pandas

從箱線圖中,可以看到某些部門的薪資分布比其他部門更廣泛。

5. 條形圖

如果想要了解變量在出現(xiàn)頻率方面的分布情況,可以使用條形圖。

使用plot.bar()繪制一個(gè)條形圖來可視化員工數(shù)量:

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

7個(gè)Pandas繪圖函數(shù)助力數(shù)據(jù)可視化,Pandas,python可視化,信息可視化,pandas

6. 面積圖

面積圖通常用于可視化在連續(xù)軸或分類軸上的累積分布變量。對于員工數(shù)據(jù)幀,可以繪制不同年齡組的累積薪資分布圖。為了將員工映射到基于年齡組的區(qū)間中,需要使用pd.cut()。

然后通過“年齡組(AgeGroup)”對薪資進(jìn)行累積求和,為了得到面積圖,使用plot.area()

#?面積圖:不同年齡組的累積薪資分布
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_group

df_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è)Pandas繪圖函數(shù)助力數(shù)據(jù)可視化,Pandas,python可視化,信息可視化,pandas

7. 餅圖

餅圖有助于可視化各個(gè)部門在整體組織中的薪資分布比例。

對于我們的示例,創(chuàng)建一個(gè)餅圖來顯示組織中各個(gè)部門的薪資分布是很有意義的。

通過部門對員工的薪資進(jìn)行分組,然后使用plot.pie()來繪制餅圖:

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

7個(gè)Pandas繪圖函數(shù)助力數(shù)據(jù)可視化,Pandas,python可視化,信息可視化,pandas

三、總結(jié)

以上就是本文介紹的7個(gè)用于快速數(shù)據(jù)可視化的Pandas繪圖函數(shù),也可以嘗試使用matplotlibseaborn生成更漂亮的圖表。對于快速數(shù)據(jù)可視化,上述這些函數(shù)非常方便,實(shí)現(xiàn)過程較為輕松。?文章來源地址http://www.zghlxwxcb.cn/news/detail-810586.html

到了這里,關(guān)于7個(gè)Pandas繪圖函數(shù)助力數(shù)據(jù)可視化的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包