train_test_split函數用於將矩陣隨機划分為訓練子集和測試子集,並返回划分好的訓練集測試集樣本和訓練集測試集標簽。
from sklearn.model_selection import train_test_split X_train, X_test, y_train, y_test = train_test_split(X,y,test_size=0.2, random_state=0) #或者 X_train, X_test, y_train, y_test = train_test_split(feature,label,stratify=label, random_state=50)
參數詳解:
X/ feature: 特征/自變量
y / label: 標簽/因變量
train_size: 訓練集數所占比例
test_size: 測試集數所占比例
random_state: 隨機種子,默認值為0。
隨機數種子:其實就是該組隨機數的編號,在需要重復試驗的時候,保證得到一組一樣的隨機數。比如你每次都填1,其他參數一樣的情況下你得到的隨機數組是一樣的。但填0或不填,每次都會不一樣。隨機數的產生取決於種子,隨機數和種子之間的關系遵從以下兩個規則:種子不同,產生不同的隨機數;種子相同,即使實例不同也產生相同的隨機數。
stratify =label : 依據標簽y,按原數據y中各類比例,分配給train和test,使得train和test中各類數據的比例與原數據集一樣。