主頁 > 知識庫 > python數(shù)據(jù)分析之員工個人信息可視化

python數(shù)據(jù)分析之員工個人信息可視化

熱門標(biāo)簽:315電話機(jī)器人廣告 地圖制圖標(biāo)注位置改變是移位嗎 地圖標(biāo)注的意義點(diǎn) 上海機(jī)器人外呼系統(tǒng)哪家好 浙江電銷卡外呼系統(tǒng)好用嗎 蓋州市地圖標(biāo)注 房產(chǎn)電銷外呼系統(tǒng) 南京銷售外呼系統(tǒng)軟件 地圖標(biāo)注微信發(fā)送位置不顯示

一、實驗?zāi)康?/h2>

(1)熟練使用Counter類進(jìn)行統(tǒng)計
(2)掌握pandas中的cut方法進(jìn)行分類
(3)掌握matplotlib第三方庫,能熟練使用該三方庫庫繪制圖形

二、實驗內(nèi)容

采集到的數(shù)據(jù)集如下表格所示:

三、實驗要求

1.按照性別進(jìn)行分類,然后分別匯總男生和女生總的收入,并用直方圖進(jìn)行展示。

2.男生和女生各占公司總?cè)藬?shù)的比例,并用扇形圖進(jìn)行展示。

3.按照年齡進(jìn)行分類(20-29歲,30-39歲,40-49歲),然后統(tǒng)計出各個年齡段有多少人,并用直方圖進(jìn)行展示。

import pandas as pd
import matplotlib.pyplot as plt
from collections import Counter

info = [{"name": "E001", "gender": "man", "age": "34", "sales": "123", "income": 350},
        {"name": "E002", "gender": "feman", "age": "40", "sales": "114", "income": 450},
        {"name": "E003", "gender": "feman", "age": "37", "sales": "135", "income": 169},
        {"name": "E004", "gender": "man", "age": "30", "sales": "139", "income": 189},
        {"name": "E005", "gender": "feman", "age": "44", "sales": "117", "income": 183},
        {"name": "E006", "gender": "man", "age": "36", "sales": "121", "income": 80},
        {"name": "E007", "gender": "man", "age": "32", "sales": "133", "income": 166},
        {"name": "E008", "gender": "feman", "age": "26", "sales": "140", "income": 120},
        {"name": "E009", "gender": "man", "age": "32", "sales": "133", "income": 75},
        {"name": "E010", "gender": "man", "age": "36", "sales": "133", "income": 40}
        ]


# 讀取數(shù)據(jù)
def get_data():
    df = pd.DataFrame(info)#DataFrame是一個以命名列方式組織的分布式數(shù)據(jù)集
    df[["age"]] = df[["age"]].astype(int)  # 數(shù)據(jù)類型轉(zhuǎn)為int
    df[["sales"]] = df[["sales"]].astype(int)  # 數(shù)據(jù)類型轉(zhuǎn)為int
    return df


def group_by_gender(df):
    var = df.groupby('gender').sales.sum()#groupby將元素通過函數(shù)生成相應(yīng)的Key,數(shù)據(jù)就轉(zhuǎn)化為Key-Value格式,之后將Key相同的元素分為一組
    fig = plt.figure()
    ax1 = fig.add_subplot(211)#2*1個網(wǎng)格,1個子圖
    ax1.set_xlabel('Gender')  # x軸標(biāo)簽
    ax1.set_ylabel('Sum of Sales')  # y軸標(biāo)簽
    ax1.set_title('Gender wise Sum of Sales')  # 設(shè)置圖標(biāo)標(biāo)題
    var.plot(kind='bar')
    plt.show()  # 顯示


def group_by_age(df):
    age_list = [20, 30, 40, 50]
    res = pd.cut(df['age'], age_list, right=False)
    count_res = pd.value_counts(res)
    df_count_res = pd.DataFrame(count_res)
    print(df_count_res)
    plt.hist(df['age'], bins=age_list, alpha=0.7)  # age_list 根據(jù)年齡段統(tǒng)計
    # 顯示橫軸標(biāo)簽
    plt.xlabel("nums")
    # 顯示縱軸標(biāo)簽
    plt.ylabel("ages")
    # 顯示圖標(biāo)題
    plt.title("pic")
    plt.show()


def gender_count(df):
    res = df['gender'].value_counts()
    df_res = pd.DataFrame(res)
    label_list = df_res.index

    plt.axis('equal')
    plt.pie(df_res['gender'], labels=label_list,
            autopct='%1.1f%%',
            shadow=True,  # 設(shè)置陰影
            explode=[0, 0.1])  # 0 :扇形不分離,0.1:分離0.1單位
    plt.title('gender ratio')
    plt.show()

    print(df_res)
    print(label_list)


if __name__ == '__main__':
    data = get_data()
    group_by_gender(data)
    gender_count(data)
    group_by_age(data)



到此這篇關(guān)于python數(shù)據(jù)分析之員工個人信息可視化的文章就介紹到這了,更多相關(guān)python員工信息可視化內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python3對拉勾數(shù)據(jù)進(jìn)行可視化分析的方法詳解
  • 利用Python進(jìn)行數(shù)據(jù)可視化常見的9種方法!超實用!
  • 利用Python代碼實現(xiàn)數(shù)據(jù)可視化的5種方法詳解
  • 使用Python快速制作可視化報表的方法
  • python數(shù)據(jù)可視化自制職位分析生成崗位分析數(shù)據(jù)報表

標(biāo)簽:金華 臨汾 日照 克拉瑪依 赤峰 雙鴨山 貴州 陽泉

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python數(shù)據(jù)分析之員工個人信息可視化》,本文關(guān)鍵詞  python,數(shù)據(jù)分析,之,員工,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《python數(shù)據(jù)分析之員工個人信息可視化》相關(guān)的同類信息!
  • 本頁收集關(guān)于python數(shù)據(jù)分析之員工個人信息可視化的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章