均值方差轴#
- sklearn.utils.sparsefuncs.mean_variance_axis(X, axis, weights=None, return_sum_weights=False)[source]#
计算CSR或CSC矩阵沿指定轴的均值和方差。
- 参数:
- X形状为 (n_samples, n_features) 的稀疏矩阵
输入数据。可以是CSR或CSC格式。
- axis{0, 1}
计算轴的方向。
- weights形状为 (n_samples,) 或 (n_features,) 的ndarray,默认为None
如果 axis 设置为 0,形状为 (n_samples,);如果 axis 设置为 1,形状为 (n_features,)。如果设置为 None,则样本权重相等。
版本 0.24 中新增。
- return_sum_weights布尔值,默认为 False
如果为 True,则如果
axis=0
,返回每个特征的权重总和;如果axis=1
,则返回每个样本的权重总和。版本 0.24 中新增。
- 返回:
- means形状为 (n_features,),数据类型为浮点型的 ndarray
特征的均值。
- variances形状为 (n_features,),数据类型为浮点型的 ndarray
特征的方差。
- sum_weights形状为 (n_features,),数据类型为浮点型的 ndarray
如果
return_sum_weights
为True
则返回。
示例
>>> from sklearn.utils import sparsefuncs >>> from scipy import sparse >>> import numpy as np >>> indptr = np.array([0, 3, 4, 4, 4]) >>> indices = np.array([0, 1, 2, 2]) >>> data = np.array([8, 1, 2, 5]) >>> scale = np.array([2, 3, 2]) >>> csr = sparse.csr_matrix((data, indices, indptr)) >>> csr.todense() matrix([[8, 1, 2], [0, 0, 5], [0, 0, 0], [0, 0, 0]]) >>> sparsefuncs.mean_variance_axis(csr, axis=0) (array([2. , 0.25, 1.75]), array([12. , 0.1875, 4.1875]))