r_regression#
- sklearn.feature_selection.r_regression(X, y, *, center=True, force_finite=True)[source]#
计算每个特征和目标变量的皮尔逊r值。
皮尔逊r值也称为皮尔逊相关系数。
用于测试许多回归器中每个回归器独立效应的线性模型。这是一个用于特征选择过程的评分函数,而不是一个独立的特征选择过程。
每个回归器和目标变量之间的互相关性计算如下:
E[(X[:, i] - mean(X[:, i])) * (y - mean(y))] / (std(X[:, i]) * std(y))
有关更多用法,请参见用户指南。
版本 1.0 中新增。
- 参数:
- X{array-like, sparse matrix} of shape (n_samples, n_features)
数据矩阵。
- yarray-like of shape (n_samples,)
目标向量。
- centerbool, default=True
是否对数据矩阵
X
和目标向量y
进行中心化。默认情况下,X
和y
将被中心化。- force_finitebool, default=True
是否强制皮尔逊R相关系数为有限值。在
X
中的某些特征或目标y
为常数(即不变)的特殊情况下,皮尔逊R相关系数未定义。当force_finite=False
时,返回np.nan
表示这种情况。当force_finite=True
时,此值将被强制设置为最小相关系数0.0
。版本 1.1 中新增。
- 返回:
- correlation_coefficientndarray of shape (n_features,)
特征的皮尔逊R相关系数。
另请参阅
f_regression
返回f统计量和p值的单变量线性回归检验。
mutual_info_regression
连续目标变量的互信息。
f_classif
分类任务中标签/特征之间的 ANOVA F 值。
chi2
分类任务中非负特征的卡方统计量。
示例
>>> from sklearn.datasets import make_regression >>> from sklearn.feature_selection import r_regression >>> X, y = make_regression( ... n_samples=50, n_features=3, n_informative=1, noise=1e-4, random_state=42 ... ) >>> r_regression(X, y) array([-0.157, 1. , -0.229])