validate_data#
- sklearn.utils.validation.validate_data(_estimator, /, X='no_validation', y='no_validation', reset=True, validate_separately=False, skip_check_array=False, **check_params)[原始碼]#
驗證輸入資料並設定或檢查輸入的特徵名稱和計數。
此輔助函式應在需要輸入驗證的估算器中使用。如果
reset=True
,這會變更估算器並設定n_features_in_
和feature_names_in_
屬性。在 1.6 版本中新增。
- 參數:
- _estimator估算器實例
要驗證輸入的估算器。
- X形狀為 (n_samples, n_features) 的 {array-like, sparse matrix, dataframe},預設值為 'no validation'
輸入樣本。如果為
'no_validation'
,則不會對X
執行驗證。這對於可以將輸入驗證委派給其底層估算器的元估算器很有用。在這種情況下,必須傳遞y
,並且唯一接受的check_params
為multi_output
和y_numeric
。- y形狀為 (n_samples,) 的 array-like,預設值為 'no_validation'
目標值。
如果為
None
,則會對X
呼叫check_array
。如果估算器的requires_y
標籤為 True,則會引發錯誤。如果為
'no_validation'
,則會對X
呼叫check_array
,並且會忽略估算器的requires_y
標籤。這是一個預設的佔位符,絕不打算明確設定。在這種情況下,必須傳遞X
。否則,只會使用
_check_y
檢查y
,或同時使用check_array
或check_X_y
檢查X
和y
,具體取決於validate_separately
。
- resetbool,預設值為 True
是否重設
n_features_in_
屬性。如果為 False,則會檢查輸入是否與上次 reset 為 True 時提供的資料一致。注意
建議在
fit
和首次呼叫partial_fit
時呼叫reset=True
。所有其他驗證X
的方法都應設定reset=False
。- validate_separatelyFalse 或 dict 的元組,預設值為 False
僅當
y
不為None
時使用。如果為False
,則呼叫check_X_y
。否則,它必須是 kwargs 的元組,用於分別在X
和y
上呼叫check_array
。estimator=self
會自動新增到這些字典中,以便在輸入資料無效時產生更豐富的錯誤訊息。- skip_check_arraybool,預設值為 False
如果為
True
,則X
和y
不會變更,只會檢查feature_names_in_
和n_features_in_
。否則,會在X
和y
上呼叫check_array
。- **check_paramskwargs
傳遞給
check_array
或check_X_y
的參數。如果 validate_separately 不為 False,則忽略。estimator=self
會自動新增到這些參數中,以便在輸入資料無效時產生更豐富的錯誤訊息。
- 傳回:
- out{ndarray, sparse matrix} 或這些的元組
經過驗證的輸入。如果同時驗證
X
和y
,則會傳回元組。