當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python sklearn resample用法及代碼示例


本文簡要介紹python語言中 sklearn.utils.resample 的用法。

用法:

sklearn.utils.resample(*arrays, replace=True, n_samples=None, random_state=None, stratify=None)

以一致的方式重新采樣數組或稀疏矩陣。

默認策略實現了引導過程的一個步驟。

參數

*arrays形狀為 (n_samples,) 或 (n_samples, n_outputs) 的類似數組的序列

可索引data-structures 可以是具有一致第一維的數組、列表、數據幀或 scipy 稀疏矩陣。

replace布爾,默認=真

使用替換實現重采樣。如果為 False,這將實現(切片)隨機排列。

n_samples整數,默認=無

要生成的樣本數。如果保留為 None,則會自動將其設置為數組的第一維。如果 replace 為 False,則它不應大於數組的長度。

random_stateint、RandomState 實例或無,默認=無

確定用於打亂數據的隨機數生成。傳遞 int 以獲得跨多個函數調用的可重現結果。請參閱術語表。

stratify形狀為 (n_samples,) 或 (n_samples, n_outputs) 的類似數組,默認=無

如果不是 None,則以分層方式拆分數據,將其用作類標簽。

返回

resampled_arrays形狀為 (n_samples,) 或 (n_samples, n_outputs) 的類似數組的序列

集合的重新采樣副本的序列。原始數組不受影響。

例子

可以在同一運行中混合稀疏和密集數組:

>>> import numpy as np
>>> X = np.array([[1., 0.], [2., 1.], [0., 0.]])
>>> y = np.array([0, 1, 2])

>>> from scipy.sparse import coo_matrix
>>> X_sparse = coo_matrix(X)

>>> from sklearn.utils import resample
>>> X, X_sparse, y = resample(X, X_sparse, y, random_state=0)
>>> X
array([[1., 0.],
       [2., 1.],
       [1., 0.]])

>>> X_sparse
<3x2 sparse matrix of type '<... 'numpy.float64'>'
    with 4 stored elements in Compressed Sparse Row format>

>>> X_sparse.toarray()
array([[1., 0.],
       [2., 1.],
       [1., 0.]])

>>> y
array([0, 1, 0])

>>> resample(y, n_samples=2, random_state=0)
array([0, 1])

使用分層的示例:

>>> y = [0, 0, 1, 1, 1, 1, 1, 1, 1]
>>> resample(y, n_samples=5, replace=False, stratify=y,
...          random_state=0)
[1, 1, 1, 0, 1]

相關用法


注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.utils.resample。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。