【分析】python--影响小费多少的因素

【分析】python--影响小费多少的因素,第1张

1.导入数据并提取前几行字段信息

# 1、导入工具包、数据,查看前几行数据列
import seaborn as sns
data = sns.load_dataset('tips')
print(data.head())
import matplotlib
matplotlib.rcParams['font.sans-serif'] = ['SimHei']
print(data.corr())

从皮尔逊相关系数可知,tips和total_bill、size之间有相关性,与total_bill甚至有强相关性。

2.小费数目通常与消费金额挂钩、有强相关性,绘制图像进行查看

#2、绘制散点图来查看小费与总消费之间的关系
import matplotlib.pyplot as plt
import pandas as pd
x = data['tip'].tolist()
y = data['total_bill'].tolist()

sns.lmplot(x='total_bill',y='tip',data=data,height=10)

 

从图中可以看出小费和总消费之前存在正相关性,但随着总消费的增加,离群值增多

3.性别、抽烟与否条件下顾客所付小费情况

# 3、绘制箱线图分析性别、抽烟与否人群所付小费情况
import matplotlib.pyplot as plt
#男性
sex_m=data.loc[data['sex']=='Male']
sex_m1=sex_m['tip'].tolist()
#女性
sex_f=data.loc[data['sex']=='Female']
sex_f1=sex_f['tip'].tolist()
#吸烟
smokery=data.loc[data['smoker']=='Yes']
smokery1=smokery['tip'].tolist()
#不吸烟
smokern=data.loc[data['smoker']=='No']
smokern1=smokern['tip'].tolist()

ax = plt.subplot()
ax.boxplot([sex_m1,sex_f1,smokery1,smokern1])
ax.set_xticklabels(['male','female','smoker_yes','smoker_no'],size=12)
plt.title('性别、吸烟与否对小费的影响',size=15)
plt.show()
# print(sex_m)
# print(sex_f)
# print(smokery)
# print(smokern)

由图像可知,性别:比起女性,男性的小费中值数高于女性,且边缘值(小费最高值)大于女性。

吸烟情况:比起不吸烟的消费者,吸烟者的小费中值数高于不吸烟的人,且边缘值(小费最高值)大于其。


a= sns.barplot(data=data, x='sex',y='tip',hue='smoker',)
plt.legend(loc="upper right")
plt.show()

4. 不同就餐时间、就餐人数的小费情况

#就餐时间

#就餐时间
sns.violinplot(x='time',y="tip",data=data,inner='quartiles')
plt.show()

由图像可知,午餐的小费主要集中在$2-3左右,其中$2占比较大,而晚餐大部分集中在$2-4,且晚餐给的小费最高值大于午餐。

#就餐人数
sns.violinplot(x='time',y="tip",data=data,inner='quartiles')
plt.show()

#就餐人数

 由图像可知,随着就餐人数的增加,小费数额也在总体上涨。

其中用餐人数在3-4人时,小费在上边缘存在异常值。

用餐人数3和5人时,下边缘存在异常值。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/2989955.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-09-23
下一篇 2022-09-23

发表评论

登录后才能评论

评论列表(0条)

保存