日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python实战讲解_Python数据可视化实战讲解

發布時間:2024/8/23 python 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python实战讲解_Python数据可视化实战讲解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

本文的文字及圖片來源于網絡,僅供學習、交流使用,不具有任何商業用途,版權歸原作者所有,如有問題請及時聯系我們以作處理。

開運張 | 作者

知乎專欄 | 來源

三個步驟:確定問題,選擇圖形

轉換數據,應用函數

參數設置,一目了然

首先對時段進行分析第一步

提出問題:租賃總量對應濕度的變化趨勢

適合圖形:因為濕度屬于連續性數值變量,我們可以選擇折線圖反應變化趨勢第二步

轉換數據:我們需要一個二維數據框,按照溫度變化排序,取對應的三個租賃數的平均值

應用函數:直接應用plt的plot函數即可完成折線圖

workingday_df = Bikedata[Bikedata['workingday']==1]#t

workingday_df = workingday_df.groupby(['hour'],as_index=True).agg({'count':'mean','registered':'mean','casual':'mean'})

nworkingday_df = Bikedata[Bikedata['workingday']==0]

nworkingday_df = nworkingday_df.groupby(['hour'],as_index=True).agg({'count':'mean','registered':'mean','casual':'mean'})

nworkingday_df.head()

第三步:設置參數

figure,axes = plt.subplots(1,2,sharey=True)#設置一個1*2的畫布,且共享y軸

workingday_df.plot(figsize=(15,5),title='The average number of rentals initiated per hour in the working day',ax=axes[0])

nworkingday_df.plot(figsize=(15,5),title='The average number of rentals initiated per hour in the nworking day',ax=axes[1])

可以看出:在工作日,會員出行對應兩個很明顯的早晚高峰期,并且在中午會有一個小的高峰,可能對應中午外出就餐需求;

工作日非會員用戶出行高峰大概在下午三點;

工作日會員出行次數遠多于非會員用戶;

在周末,總體出行趨勢一致,大部分用車發生在11-5點這段時間,早上五點為用車之最。

對溫度進行分析第一步

提出問題:租賃總量對應濕度的變化趨勢

適合圖形:因為濕度屬于連續性數值變量,我們可以選擇折線圖反應變化趨勢第二步

轉換數據:我們需要一個二維數據框,按照溫度變化排序,取對應的三個租賃數的平均值

應用函數:直接應用plt的plot函數即可完成折線圖第三步

參數設置:只需要設置折線圖的標題,其他參數默認

temp_df = Bikedata.groupby(['temp'],as_index='True').agg({'count':'mean','registered':'mean','casual':'mean'})

temp_df.plot(title = 'The average number of rentals initiated per hour changes with the temperature')

隨著溫度的升高,租賃數量呈上升趨勢;

在溫度達到35度時,因天氣炎熱,總體數量開始下降;

在溫度在4度時,租賃數達到最低點;

濕度對租賃數量的影響第一步

提出問題:租賃總量對應濕度的變化趨勢

適合圖形:因為濕度屬于連續性數值變量,我們可以選擇折線圖反應變化趨勢第二步

轉換數據:我們需要一個二維數據框,按照溫度變化排序,取對應的三個租賃數的平均值

應用函數:直接應用plt的plot函數即可完成折線圖第三步

參數設置:只需要設置折線圖的標題,其他參數默認

humidity_df = Bikedata.groupby(['humidity'],as_index=True).agg({'count':'mean','registered':'mean','casual':'mean'})

humidity_df.plot(title='Average number of rentals initiated per hour in different humidity')

可以觀察到在濕度20左右租賃數量迅速達到高峰值,此后緩慢遞減。

年份,月份和季節作圖方法類似,都采用折線圖繪制,這里省略。

查看不同天氣對出行情況的影響第一步

提出問題:租賃總量對應濕度的變化趨勢

適合圖形:因為天氣情況屬于數值型分類變量,我們可以選擇柱形圖觀察數量分布第二步

轉換數據:我們需要一個二維數據框,按照天氣情況對租賃數量取平均值

應用函數:應用plt的plot.bar函數繪制組合柱形圖第三步

參數設置:只需要設置折線圖的標題,其他參數默認

weather_df = Bikedata.groupby(['weather'],as_index=True).agg({'registered':'mean','casual':'mean'})

weather_df.plot.bar(stacked=True,title='Average number of rentals initiated per hour in different weather')

觀察到天氣等級為4時,平均出行人數比天氣等級為2是還要高,這不符合常理

我們查看一下天氣等級為4的詳細情況

count_weather = Bikedata.groupby('weather')

count_weather[['casual','registered','count']].count()

天氣狀況為4級的只有一天,我們把數據打印出來查看一下

Bikedata[Bikedata['weather']==4]

時間為工作日的下午六點鐘,屬于晚高峰異常數據,不具有代表性。

會員用戶和臨時用戶在整體用戶中占比第一步

提出問題:查看會員用戶和臨時用戶在整體用戶中的比例

適合圖形:查看占比,適合用餅圖pie第二步

轉換數據:需要一個二維數據框,按天數取兩種用戶的平均值

應用函數:應用plt的plot.pie函數繪制餅圖第三步

參數設置:這是數據標簽和類別標簽

#考慮到相同日期是否工作日,星期幾,以及所屬年份等信息是一樣的,把租賃數據按天求和,其它日期類數據取平均值

day_df = Bikedata.groupby(['date'], as_index=False).agg({'casual':'sum','registered':'sum','count':'sum', 'workingday':'mean','weekday':'mean','holiday':'mean','year':'mean'})

day_df.head()

#按天取兩種類型用戶平均值

number_pei=day_df[['casual','registered']].mean()

number_pei

casual 517.411765

registered 2171.067031

dtype: float64

#繪制餅圖

plt.axes(aspect='equal')

plt.pie(number_pei, labels=['casual','registered'], autopct='%1.1f%%', pctdistance=0.6 , labeldistance=1.05 , radius=1 )

plt.title('Casual or registered in the total lease')

Text(0.5,1,'Casual or registered in the total lease')

總結

以上是生活随笔為你收集整理的python实战讲解_Python数据可视化实战讲解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。