大数据可视化技术学习二:员工工资数据

  • 工资数据。

上述企业财务部员工的月工资数据如下:

2050,2100,2200,2300,2350,2450,2500,2700,2900, 2850,3500,3800,2600,3000,3300,3200,4000,3100,4200,3500。

1)试用mean、median、var、sd函数求数据的均值、中位数、方差、标准差。

2)绘制该数据的散点图和直方图,应用hist函数构建自己的计量频数表函数。

3)请用自定义函数freq生成频数表和频数图。

1)试用mean、median、var、sd函数求数据的均值、中位数、方差、标准差。

大数据可视化技术学习二:员工工资数据_第1张图片

 大数据可视化技术学习二:员工工资数据_第2张图片

2)绘制该数据的散点图和直方图,应用hist函数构建自己的计量频数表函数。

 大数据可视化技术学习二:员工工资数据_第3张图片

大数据可视化技术学习二:员工工资数据_第4张图片

大数据可视化技术学习二:员工工资数据_第5张图片

 大数据可视化技术学习二:员工工资数据_第6张图片

大数据可视化技术学习二:员工工资数据_第7张图片

3)请用自定义函数freq生成频数表和频数图。 

大数据可视化技术学习二:员工工资数据_第8张图片

运行截图

大数据可视化技术学习二:员工工资数据_第9张图片

大数据可视化技术学习二:员工工资数据_第10张图片

大数据可视化技术学习二:员工工资数据_第11张图片

大数据可视化技术学习二:员工工资数据_第12张图片

运行代码: 

#(1)试用mean、median、var、std函数求数据的均值、中位数、方差、标准差。
import numpy as np
import pandas as pd
from matplotlib import pyplot, pyplot as plt
import random

# 设置全局字体(超级重要!!!!!!!!不然会有乱码)
plt.rcParams['font.family'] = 'Microsoft YaHei'

wage_list = [2050,2100,2200,2300,2350,2450,2500,2700,2900,2850,
             3500,3800,2600,3000,3300,3200,4000,3100,4200,3500]
df_wage = pd.DataFrame({'工资':wage_list})
wage_mean = np.mean(wage_list)
wage_list.sort()
wage_median = np.median(wage_list)
wage_var = np.var(wage_list)
wage_std = np.std(wage_list)
print("均值:",wage_mean)
print("中位数:",wage_median)
print("方差:",wage_var)
print("标准差:",wage_std)

#(2)绘制该数据的散点图和直方图,应用hist函数构建自己的计量频数表函数。
workers = random.sample(range(1,21),20)
workers.sort()

#生成散点图
pyplot.scatter(workers,df_wage['工资'])
pyplot.xlabel('工人')
pyplot.ylabel('工资')
pyplot.title('企业财务部员工的月工资数据散点图')
pyplot.xticks(workers)
pyplot.show()

#绘制直方图
plt.hist(df_wage['工资'],density=True)
plt.xlabel('工资区间')
plt.title('企业财务部员工的月工资数据直方图' )
plt.show()

#应用hist函数构建自己的计量频数表函数
def freq(x):
    H=plt.hist(x)
    x = H[1][:-1]
    y = H[1][1:]
    f = H[0]
    z = f/sum(f)*100
    a = pd.DataFrame([x,y,f,z],index=['上限','下限','频数','频率'])
    return(a)
freq(df_wage['工资'])

# (3)请自定义一个计量数据的频数表生成函数和频数图绘制函数。
#自定义一个计量数据的频数表生成函数

def fqc_2(x):      #输入的数据类型是列表
    n = pd.value_counts(x)
    s = sum(n)
    table_3 = pd.concat([n],axis=1)
    table_3.columns = ['频数']
    return table_3
plt.show()

#自定义一个频数图绘制函数
def drew_number(list):
    plt.hist(list,bins=len(list), histtype='bar', rwidth=0.8, cumulative=True)
    plt.xlabel('工资区间')

    plt.title('企业财务部员工的月工资数据频数直方图' )
    plt.show()


drew_number(wage_list)
fqc_2(wage_list)

你可能感兴趣的:(大数据可视化,信息可视化,学习,大数据,python)