Python資料科學(八)- 資料探索與資料視覺化

一隻寫程式的猿發表於2019-03-02
Python資料科學(八)- 資料探索與資料視覺化

傳送門:

1.敘述性統計與推論性統計

  • 敘述性統計
    有系統的歸納資料,瞭解資料的輪廓
    對資料樣本做敘述性陳述,例如:平均數、標準偏差、計次頻率、百分比
    對資料資料的影像化處理,將資料摘要變為圖示表
  • 推論性統計
    資料模型的建構
    從樣本推論整體資料的概況
    相關、迴歸、單因子變異數、因素分析

1.敘述性統計

1.我們一般有三種方式進行敘述性統計

  • 對大多數資料進行分析,80%都是在於如何加總與平均
    eg:
    • 銷售份額
    • 客戶數量
    • 業績成長量
  • 使用SQL做敘述性統計(通過加入限制條件得到我們需要的資料)
select * from tb1 where col1 >= 100 limit 3
複製程式碼

2.如何運算元據

  • 運算元據我們常常需要
    • 分割資料(Split)
    • 轉換資料(Transformation)
    • 聚合資料(Aggregation)
    • 探索資料(Exploration)
  • 需要如同SQL的語法去運算元據
    首先我們需要安裝pandas_datareaderpip install pandas_datareader,pandas_datareader是一個遠端獲取金融資料的Python工具,它提供了下面幾個機構的資料。
import pandas_datareader

pandas_datareader.DataReader(name, data_source=None, start=None, end=None, retry_count=3, 
                                    pause=0.001, session=None, access_key=None)
複製程式碼
  • name:股票名稱
  • data_source:資料來源,可以是雅虎,谷歌等等
  • start:開始日期
  • end:截止日期
  • retry_count: 如果斷開連線重新連線幾次
  • pause:抓取資料的中間是否需要停頓
  • session:是否需要加入session
  • access_key:如果介面需要提供access_key,則此項需要填
    #2.進行讀取相關資料
    丘老師是使用pandas_datareader.DataReader來讀取的雅虎提供的阿里巴巴股票資料,現在雅虎已經被棄用。這裡我使用Tushare來讀取金融資料。
    Tushare是一個免費、開源的python財經資料介面包。
import tushare

# 獲取大盤指數實時行情列表
df = ts.get_index()

# 檢視後五行
df.tail()
複製程式碼
Python資料科學(八)- 資料探索與資料視覺化

備註:返回值說明

  • code:指數程式碼
  • name:指數名稱
  • change:漲跌幅
  • open:開盤點位
  • preclose:昨日收盤點位
  • close:收盤點位
  • high:最高點位
  • low:最低點位
  • volume:成交量(手)
  • amount:成交金額(億元)
# 檢視列
df.columns
複製程式碼
Python資料科學(八)- 資料探索與資料視覺化

1.做一些簡易的統計

  • 針對單列進行統計
    • 算出總和:df[`volume`].sum()
    • 算出平均:df[`volume`].mean()
    • 算出標準差:df[`volume`].std()
    • 取得最小值:df[`volume`].min()
    • 取得最大值:df[`volume`].max()
    • 取得筆數:df[`volume`].count()
  • 針對多列進行統計
# 取得最低開盤點位,最低收盤點位
df[[`open`, `close`]].min()
複製程式碼
Python資料科學(八)- 資料探索與資料視覺化

2.取得整體敘述性統計

df.describe()
複製程式碼
均值,標準差,最大值,最小值等等

3.計算當日大盤指數當日漲跌次數

  • 計算當日漲跌
df[`diff`] = df[`close`] - df[`open`]
df[`rise`] = df[`diff`] > 0  # 漲
df[`fall`] = df[`diff`] < 0  # 跌
複製程式碼
可以看到多了差額、漲、跌三列
  • 計算漲跌次數
df[[`rise`, `fall`]].sum()
複製程式碼
Python資料科學(八)- 資料探索與資料視覺化

相關文章