iT邦幫忙

1

pandas 套件中 sample 的使用 - 對數據集進行抽樣或打散

函數:sample

DataFrame.sample(n=None, frac=None, replace=False, weights=None, random_state=None, axis=None)

參數說明

  • n, frac:設定要抽樣出的筆數,兩者擇一使用。
    • 預設值:frac=None, n=1 (抽出一筆)
    • n (int):要抽出的筆數
    • frac (float):要抽出的比例,0~1
  • replace:取出後是否放回
    • 預設值:False (取後不放回)
      • replace=True (取後放回)
  • weights:每筆資料被抽出來的權重。
    • 預設值:None
  • random_state:隨機的狀態。(白話文就是,當random_state設定同一個數值時,同一群資料被隨機抽出來的結果會一樣)
  • axis:要根據哪一個軸來抽樣:
    • 預設值:None
      • 0:index
      • 1:columns

應用情況

  • 抽樣
    • ex. 5000筆資料中,要隨機抽出300筆
  • 打散
    • ex. 要把1000筆資料隨機打散
shuffle_df = df.sample(frac=1).reset_index(drop=True)

補充說明:reset_index(drop=False)

  • 預設值:False (原本當作index的欄位新增成一個新欄位,而當前的index由一組新的序號來表示)
  • drop=True (原本當作index的剔除掉,當前資料的index由一組新的序號來表示)

如果有任何問題歡迎留言討論,文中錯誤的地方還請不吝指正,謝謝!

References


尚未有邦友留言

立即登入留言