Python零基礎入門數據分析實戰之小費數據集應用

Python零基礎入門數據分析實戰之小費數據集應用的圖1

一、數據來源

本節選用的是Python的第三方庫seaborn自帶的數據集,該小費數據集為餐飲行業收集的數據,其中total_bill為消費總金額、tip為小費金額、sex為顧客性別、smoker為顧客是否吸煙、day為消費的星期、time為聚餐的時間段、size為聚餐人數。

import numpy as np 
from pandas import Series,DataFrame 
import pandas as pd 
import seaborn as sns    #導入seaborn庫 tips=sns.load_dataset('tips')  #seaborn庫自帶的數據集 tips.head()

Python零基礎入門數據分析實戰之小費數據集應用的圖2

二、問題探索

  • 小費金額與消費總金額是否存在相關性?

  • 性別、是否吸煙、星期幾、聚餐人數和小費金額是否有一定的關聯?

  • 小費金額占小費總金額的百分比是否服從正態分布?

三、數據清洗

tips.shape #數據集的維度

(244,7)

共有244條數據,7列。

tips.describe() #描述統計

Python零基礎入門數據分析實戰之小費數據集應用的圖3

描述統計結果如上所示。

tips.info() #查看缺失值信息

此例無缺失值。

四、數據探索

tips.plot(kind='scatter',x='total_bill',y='tip') #繪制散點圖

由圖可看出,小費金額與消費總金額存在正相關性。

import numpy as np from pandas import Series,DataFrame import pandas as pd import seaborn as sns   #導入seaborn庫 tips=sns.load_dataset('tips')#seaborn庫自帶的數據集 tips.head()

3.0896178343949052

female_tip = tips[tips['sex'] == 'Female']['tip'].mean() #女性平均消費金額female_tip

2.833448275862069

s = Series([male_tip,female_tip],index=['male','female']) 
s

male 3.089618

female 2.833448

dtype: float64

s.plot(kind='bar') #男女平均小費柱狀圖

Python零基礎入門數據分析實戰之小費數據集應用的圖4

由圖可看出,女性小費金額小于男性小費金額。

sun_tip = tips[tips['day'] == 'Sun']['tip'].mean() 
sat_tip = tips[tips['day'] == 'Sat']['tip'].mean() 
thur_tip = tips[tips['day'] == 'Thur']['tip'].mean() 
fri_tip = tips[tips['day'] == 'Fri']['tip'].mean()#各個日期的平均小費值 
s = Series([thur_tip,fri_tip,sat_tip,sun_tip],index=['Thur','Fri','Sat','Sun']) 
s

Python零基礎入門數據分析實戰之小費數據集應用的圖5

s.plot(kind='bar') #日期平均小費柱狀圖

Python零基礎入門數據分析實戰之小費數據集應用的圖6

由圖可看出,周六、周日的小費比周四、周五的小費高。

tips['percent_tip'] = tips['tip']/(tips['total_bill']+tips['tip']) 
tips.head(10) #小費所占百分比

Python零基礎入門數據分析實戰之小費數據集應用的圖7

tips['percent_tip'].hist(bins=50)#小費百分比直方圖

Python零基礎入門數據分析實戰之小費數據集應用的圖8

由圖可看出,小費金額占小費總金額的百分比基本服從正態分布。

8888.png

來源:本文為第三方轉載,如有侵權請聯系小編刪除。

登錄后免費查看全文
立即登錄
App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP