天天看點

DataFrame使用pd.sample()随機選取N行資料

1.簡介

在訓練深度學習或者機器學習模型時,免不了需要按照比例劃分訓練集和驗證集,有的時候使用pandas的方式讀取csv資料檔案,得到的是一個DataFrame的對象

df

,這時可以使用

pd.sample()

來實作從df中随機抽樣。

2.函數說明

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

輸入參數見下表所示:

參數名稱 參數說明
n 要抽取的行數
frac 抽取行的比例
replace 是否為有放回抽樣,True:有放回抽樣,False:不放回抽樣
weights 字元索引或機率數組,axis=0:為行字元索引或機率數組,axis=1:為列字元索引或機率數組
random_state int: 随機數發生器種子或numpy.random.RandomState
axis 選擇抽取資料的行還是列,axis=0:抽取行,axis=1:抽取列

3.傳回值說明

傳回值為帶有N行資料的DataFrame對象(N=1時也是DataFrame對象)

4.附加說明

df.sample()

函數中設定

frac=1.0

時可以實作shuffle