Python 基礎教學

1. Python 環境設定 2. Python 基本變數 3. Python 流程控制 4. Python 模組與套件概念 5. Pandas 資料處理 6. Matplotlib 繪圖 7. Jieba 切詞
課程介紹 & 程式碼

Pandas進階資料處理groupby-樞紐分析

接續著前面課程中所使用到的salelist.csv檔案。在該檔案中有很多的商品銷售紀錄。若今天您是老闆,您會不會想要看各個產品品項的銷售總金額,找出公司的金雞母呢?groupby()這個方法可以幫您做到。 行銷搬進大程式

1. 匯入範例檔案

這裡就用一個模擬的銷售資料來匯入,一般在進行資料分析時,都是使用csv檔案格式來做存取,盡量避免使用xls或xlsx的格式。原因在於xls或xlsx的格式有紀錄excel中的一些欄位樣式設定,包含顏色、大小、框線等,因此檔案會大上許多,但這些多餘的設定在使用pandas的時候都是用不到的。

import pandas as pd
#--- 匯入資料
salelist = pd.read_csv('salelist.csv') #也可使用read_excel

2. 加總產品銷售額

首先,groupby()這個方法裡面給他想要合併的欄位,後面接上合併的方式,就可以完成資料,而合併的方式有max()、min()、count()、sum()...等,可以選擇

salelist.groupby("product").mean()

以上程式碼執行之結果:

              key       uid  quantity  price
product                                     
apple    5.500000  3.000000  5.000000   10.0
banana   4.000000  3.500000  8.000000   34.0
cherry   4.000000  3.000000  3.000000   60.0
guava    6.500000  2.500000  2.000000   20.0
orange   6.333333  3.666667  4.333333    5.0
salelist[['product','quantity']].groupby("product").mean()

以上程式碼執行之結果:

         quantity
product          
apple    5.000000
banana   8.000000
cherry   3.000000
guava    2.000000
orange   4.333333
# 每筆訂單的總額
salelist['金額'] = salelist['quantity'] * salelist['price']
salelist[['tid','金額']].groupby("tid").mean()

以上程式碼執行之結果:

          金額
tid         
T0001   50.0
T0002  204.0
T0003   80.0
T0004  135.0
T0005   35.0

作者:楊超霆 行銷搬進大程式 創辦人

©2023 行銷搬進大程式 Marketing Live in Code