skactiveml.utils.check_X_y#
- skactiveml.utils.check_X_y(X=None, y=None, X_cand=None, sample_weight=None, sample_weight_cand=None, accept_sparse=False, *, accept_large_sparse=True, dtype='numeric', order=None, copy=False, ensure_all_finite=True, ensure_2d=True, allow_nd=False, multi_output=False, allow_nan=None, ensure_min_samples=1, ensure_min_features=1, y_numeric=False, estimator=None, missing_label=nan)[source]#
Input validation for standard estimators. Adjusted from sklearn [1].
Checks X and y for consistent length, enforces X to be at least 2D and y 1D. By default, X is checked to be non-empty and containing only finite values. Standard input checks are also applied to y, such as checking that y does not have np.nan or np.inf targets. For multi-label y, set multi_output=True to allow 2D and sparse y. If the dtype of X is object, attempt converting to float, raising on failure.
- Parameters
- Xnd-array or list or sparse matrix, default=None
Labeled input data.
- ynd-array or list or sparse matrix, default=None
Labels for X.
- X_candnd-array or list or sparse matrix, default=None
Unlabeled input data
- sample_weightarray-like of shape (n_samples,), default=None
Sample weights.
- sample_weight_candarray-like of shape (n_candidates,), default=None
Sample weights of the candidates.
- accept_sparsestring or boolean or list of string, default=False
String[s] representing allowed sparse matrix formats, such as ‘csc’, ‘csr’, etc. If the input is sparse but not in the allowed format, it will be converted to the first listed format. True allows the input to be any format. False means that a sparse matrix input will raise an error.
- accept_large_sparsebool, default=True
If a CSR, CSC, COO or BSR sparse matrix is supplied and accepted by accept_sparse, accept_large_sparse will cause it to be accepted only if its indices are stored with a 32-bit dtype.
- dtypestring, type, list of types or None (default=”numeric”)
Data type of result. If None, the dtype of the input is preserved. If “numeric”, dtype is preserved unless array.dtype is object. If dtype is a list of types, conversion on the first type is only performed if the dtype of the input is not in the list.
- order‘F’, or ‘C’ or None, default=None
Whether an array will be forced to be fortran or c-style.
- copyboolean, default=False
Whether a forced copy will be triggered. If copy=False, a copy might be triggered by a conversion.
- ensure_all_finiteboolean or ‘allow-nan’, default=True
Whether to raise an error on np.inf, np.nan, pd.NA in X. This parameter does not influence whether y can have np.inf, np.nan, pd.NA values. The possibilities are:
True: Force all values of X to be finite.
False: accepts np.inf, np.nan, pd.NA in X.
‘allow-nan’: accepts only np.nan or pd.NA values in X. Values cannot be infinite.
- ensure_2dboolean, default=True
Whether to raise a value error if X is not 2D.
- allow_ndboolean, default=False
Whether to allow X.ndim > 2.
- multi_outputboolean, default=False
Whether to allow 2D y (array or sparse matrix). If false, y will be validated as a vector. y cannot have np.nan or np.inf values if multi_output=True.
- allow_nanboolean, default=None
Whether to allow np.nan in y.
- ensure_min_samplesint, default=1
Make sure that X has a minimum number of samples in its first axis (rows for a 2D array).
- ensure_min_featuresint, default=1
Make sure that the 2D array has some minimum number of features (columns). The default value of 1 rejects empty datasets. This check is only enforced when X has effectively 2 dimensions or is originally 1D and ensure_2d is True. Setting to 0 disables this check.
- y_numericboolean, default=False
Whether to ensure that y has a numeric type. If dtype of y is object, it is converted to float64. Should only be used for regression algorithms.
- estimatorstr or estimator instance, default=None
If passed, include the name of the estimator in warning messages.
- missing_labelscalar or string or np.nan or None, default=np.nan
Value to represent a missing label.
- Returns
- X_convertedobject
The converted and validated X.
- y_convertedobject
The converted and validated y.
- candidatesobject
The converted and validated candidates Only returned if candidates is not None.
- sample_weightnp.ndarray
The converted and validated sample_weight.
- sample_weight_candnp.ndarray
The converted and validated sample_weight_cand. Only returned if candidates is not None.
References
- 1
F. Pedregosa, G. Varoquaux, A. Gramfort, V. Michel, B. Thirion, O. Grisel, M. Blondel, P. Prettenhofer, R. Weiss, V. Dubourg, J. Vanderplas, A. Passos, D. Cournapeau, M. Brucher, M. Perrot, and E. Duchesnay. Scikit-learn: Machine Learning in Python. J. Mach. Learn. Res., 12:2825–2830, 2011.