運用numpy和pandas 進行數據分析的知識點
05-27
運用numpy和pandas 進行數據分析的知識點
來自專欄 猴子聊數據分析
- numpy 用於數據計算,padans 用於數據分析 ,matplotlib 數據結果的可視化
- 一維數據分析
- numpy----array
- pandas----Series
- numpy一維數據與列表的區別:Array可以進行向量運算.計算mean.std.數據類型必須相同。
- pandas一維數據series有索引,刪除方法一.刪除缺失值dropna();方法二缺失值填充s1.add(s2,fill_value=0)。.iloc[]根據位置獲取數值。.loc[]用於根據索引值獲取數值
- 二維數據
- numpy...array
- 查詢A[a,b][行號,列號]
- 獲取第一行A[0,:]
- 獲取第一列A[:,0]
- axis=1按行,axis=0按列計算均值eg a.mean(axis=0)
- pandas...DataFrame
- 優點:每一列可以是不同的數據類型可以方便表示EXCEL,有有類似與索引
- 查詢元素sales.iloc[行號,列號]
- 獲取一行sale.iloc[行號,:]
- 獲取一列sale.iloc[:,列號]
- 類似轉成EXCEL方法方便處理,定義數據框
- 獲取一列 .loc[;,索引],簡單的方法是如下
- 數據框複雜查詢:切片功能
- 數據框複雜查詢:條件判斷
- 第一步 構建查詢條件
- 第二步 應用查詢條件
- 有多少行多少列:shape
- 數據分析步驟
- 提出問題/理解數據/數據清洗/構建模型/數據可視化
- 案例:銷售數據分析
- 1.提出問題 :月均消費次數?月均消費金額?客單價?消費趨勢?
- 2.理解數據
- 讀取EXCEL數據,了解數據
- 3.數據清洗
- 選擇子集
- 列名重命名
- 缺失數據處理
- 數據類型轉換
- saledf.loc[:,銷售時間]=pd.to_datetime(saledf.loc[:,銷售時間], format=%Y-%m-%d,
- errors=coerce)
- 字元串轉化成數據字元類型
- 數據排序saledf=saledf.sort_values(by=銷售時間,ascending=True)
- 異常值處理:
- query=saledf.loc[:,銷售數量]>0
- print(刪除異常值前:,saledf.shape)
- saledf=saledf.loc[query,:]
- print(刪除異常值:,saledf.shape)
- 構建模型
- 業務指標1:月均消費次數=總消費次數 / 月份數
- kpi1=saledf.drop_duplicates(subset=[銷售時間,社保卡號])
- 總消費次數total1=kpi1.shape[0]
- 指標2:月均消費金額 = 總消費金額 / 月份數
- 指標3:客單價=總消費金額 / 總消費次數
- 指標4:消費趨勢,畫圖:折線圖
推薦閱讀:
※零-一個留級生的自白
※如何避免自嗨型的數據分析?你必知的三大法則
※AB 測試最佳實踐
※python入門第四課——數據類型轉換
※《BI程序猿——2017年總結》