_safe_indexing#
- sklearn.utils._safe_indexing(X, indices, *, axis=0)[source]#
使用索引返回 X 的行、项或列。
警告
此实用工具已记录,但**是私有的**。这意味着在没有任何弃用周期的情况下,向后兼容性可能会被破坏。
- 参数:
- Xarray-like, sparse-matrix, list, pandas.DataFrame, pandas.Series
要从中采样行、项或列的数据。当
axis=0时,仅支持list。- indicesbool, int, str, slice, array-like
如果
axis=0,则支持布尔和整数 array-like、整数切片以及标量整数。- 如果
axis=1 要选择单列,对于所有
X类型,indices可以是int类型,对于 dataframe,只能是str类型。所选子集将是 1D,除非X是稀疏矩阵,在这种情况下将是 2D。要选择多列,
indices可以是以下之一:list、array、slice。这些容器中使用的类型可以是以下之一:int、‘bool’ 和str。但是,当X是 dataframe 时,才支持str。所选子集将是 2D。
- 如果
- axisint, default=0
沿其对
X进行子采样的轴。axis=0选择行,而axis=1选择列。
- 返回:
- subset
X 在轴 0 或 1 上的子集。
注意事项
支持 CSR、CSC 和 LIL 稀疏矩阵。不支持 COO 稀疏矩阵。
示例
>>> import numpy as np >>> from sklearn.utils import _safe_indexing >>> data = np.array([[1, 2], [3, 4], [5, 6]]) >>> _safe_indexing(data, 0, axis=0) # select the first row array([1, 2]) >>> _safe_indexing(data, 0, axis=1) # select the first column array([1, 3, 5])