Python数据特征分析_02(相关系数,帕累托定律,周期性)

本篇博客主要以员工贡献度为例,分析不同菜品之间是否存在相关性。最典型的应用就是: 啤酒和尿布销售之间的联系

文章目录

一、周期性分析

探索某个变量是否随着时间变化而呈现出某种周期性变化的趋势。时间尺度相对较长的周期性趋势有:年度周期性趋势,季节性周期性趋势,相对较短的有月度周期性趋势,周度周期性趋势,甚至更短的天,小时的周期性趋势。

import pandas as pd
import matplotlib.pyplot as plt

df_normal=pd.read_excel("D:/S072003Python/05DataMineML/catering_sale.xls")
plt.figure(figsize=(20,9))
plt.plot(df_normal["日期"],df_normal["销量"])
plt.xlabel("日期")
plt.ylabel("销量")

x_major_locator = plt.MultipleLocator(7)
ax = plt.gca()
ax.xaxis.set_major_locator(x_major_locator)
plt.title("销售趋势")
plt.xticks(rotation=30)
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.show()

df_abnormal = pd.read_excel("D:/S072003Python/05DataMineML/catering_sale (2).xls")
plt.figure(figsize=(20, 9))
plt.xticks(rotation=30)
plt.plot(df_abnormal["日期"],df_abnormal["销量2"]-np.random.randint(1000))
plt.xlabel("日期")
plt.ylabel("销量2")

x_major_locator = plt.MultipleLocator(7)
ax = plt.gca()
ax.xaxis.set_major_locator(x_major_locator)
plt.title("不正常销量趋势")

plt.rcParams['font.sans-serif'] = ['SimHei']
plt.show()

Python数据特征分析_02(相关系数,帕累托定律,周期性)

二、贡献性分析

Python数据特征分析_02(相关系数,帕累托定律,周期性)
取出到2022年4月3号为止,每个人累计总销售业绩,并进行排序
dfsort=df['20220403']
dfsort2=dfsort.copy()
dfsort2.sort_values(ascending=False,inplace=True)
dfsort2

Python数据特征分析_02(相关系数,帕累托定律,周期性)
plt.figure(figsize=(20,10))
dfsort2.plot(kind='bar',color='g',alpha=0.6,width=0.7)
plt.ylabel('销售业绩')

Python数据特征分析_02(相关系数,帕累托定律,周期性)
根据帕累托法则,我们需要找出贡献度80%的员工,那么这些员工就是努力工作的员工,当80%这条线越靠近右边,则说明努力的员工越多。如果线越靠近左边,则说明大部分员工的贡献度都很低,根据不同的情况,公司的人力资源管理就需要有不同的解决方法。
Python数据特征分析_02(相关系数,帕累托定律,周期性)

p=dfsort2.cumsum()/dfsort2.sum()
key=p[p>0.8].index[0]
key_num=dfsort2.index.tolist().index(key)
key_num

Python数据特征分析_02(相关系数,帕累托定律,周期性)

找出核心的产出人员:


key_studys=dfsort2.loc[:key]
key_studys

绘图:

plt.figure(figsize=(20,10))
dfsort2.plot(kind='bar',color='g',alpha=0.6,width=0.7)
plt.ylabel('时长_分钟')
p.plot(style='--ko',secondary_y=True)
plt.axvline(key_num,color='r',linestyle='--')

plt.annotate(format(p[key_num],'.2%'),xy=(key_num,p[key_num]),xytext=(22,p[key_num]*0.9),arrowprops=dict(arrowstyle="->",connectionstyle="arc3,rad=0.5"))

plt.ylabel('时长_占比')

Python数据特征分析_02(相关系数,帕累托定律,周期性)

三、相关性分析

1、探究不同菜品之间的相关性

还是拿餐饮的菜品,来分析不同菜品之间是否存在相关性。

Python数据特征分析_02(相关系数,帕累托定律,周期性)
a=catdf.corr()
b=catdf.corr()['生炒菜心']
b

就类似于推荐系统,通过相关性分析,可以为用户继续推荐(想到了淘宝的 猜你喜欢(≧∇≦)ノ)

Python数据特征分析_02(相关系数,帕累托定律,周期性)

2、探究不同学生之间的相关性

选取十名同学的学习时长,看看同学直接是否有影响。

Python数据特征分析_02(相关系数,帕累托定律,周期性)

pd.plotting.scatter_matrix(dfddiffT.iloc[:,1:10],figsize=(12,12),
                          c='k',
                          marker='+',
                          diagonal='hist',
                          alpha=0.8,
                          range_padding=0.1)

Python数据特征分析_02(相关系数,帕累托定律,周期性)

Original: https://blog.csdn.net/wxfighting/article/details/123964821
Author: abc123susie
Title: Python数据特征分析_02(相关系数,帕累托定律,周期性)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/695469/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球