_safe_indexing#
- sklearn.utils._safe_indexing(X, indices, *, axis=0)#
返回使用索引的X的行、项或列。
Warning
此实用程序已记录,但 私有 。这意味着在没有任何弃用周期的情况下可能会破坏向后兼容性。
- Parameters:
- Xarray-like, sparse-matrix, list, pandas.DataFrame, pandas.Series
从中采样行、项或列的数据。当
axis=0
时,仅支持list
。- indicesbool, int, str, slice, array-like
如果
axis=0
,支持布尔和整数数组类、整数切片和标量整数。- 如果
axis=1
: 要选择单个列,
indices
可以是int
类型用于所有X
类型和仅用于数据帧的str
。选择的子集将是1D,除非X
是稀疏矩阵,在这种情况下它将是2D。要选择多列,
indices
可以是以下之一:list
、array
、slice
。这些容器中使用的类型可以是以下之一:int
、bool
和str
。然而,仅当X
是数据帧时才支持str
。选择的子集将是2D。
- 如果
- axisint, default=0
沿其对
X
进行子采样的轴。axis=0
将选择行,而axis=1
将选择列。
- Returns:
- subset
轴0或1上X的子集。
Notes
支持CSR、CSC和LIL稀疏矩阵。不支持COO稀疏矩阵。
Examples
>>> 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) # 选择第一行 array([1, 2]) >>> _safe_indexing(data, 0, axis=1) # 选择第一列 array([1, 3, 5])