f_regression
- sklearn.feature_selection.f_regression(X, y, *, center=True, force_finite=True)[исходный код]
-
Тесты одномерной линейной регрессии, возвращающие F-статистику и p-значения.
Быстрая линейная модель для проверки влияния одного предиктора, последовательно применяемая ко многим предикторам.
Это выполняется в 2 шага:
-
Вычисляется взаимная корреляция каждого предиктора с целевой переменной с помощью
r_regression:E[(X[:, i] - mean(X[:, i])) * (y - mean(y))] / (std(X[:, i]) * std(y))
- Она преобразуется в F-оценку, а затем в p-значение.
f_regressionвыводится изr_regressionи ранжирует признаки в том же порядке, если все признаки положительно коррелируют с целевой переменной.Однако обратите внимание, что, в отличие от
f_regression, значенияr_regressionнаходятся в диапазоне [-1, 1] и поэтому могут быть отрицательными. Таким образом,f_regressionрекомендуется использовать в качестве критерия отбора признаков для выявления потенциально предсказательных признаков для последующего классификатора независимо от знака связи с целевой переменной.Кроме того,
f_regressionвозвращает p-значения, аr_regression— нет.Подробнее см. в руководстве пользователя.
- Параметры:
-
- 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
-
Принудительно ли обеспечивать конечность F-статистик и соответствующих p-значений. Возможны два случая, когда F-статистика не является конечной:
- целевая переменная
yили некоторые признаки вXявляются константами. В этом случае корреляция Пирсона R не определена, что приводит к получению значенийnp.nanдля F-статистики и p-значения. Еслиforce_finite=True, F-статистика устанавливается в0.0, а соответствующее p-значение — в1.0. - признак в
Xидеально коррелирует (или антикоррелирует) с целевой переменнойy. В этом случае ожидается, что F-статистика будет равнаnp.inf. Еслиforce_finite=True, F-статистика устанавливается вnp.finfo(dtype).max, а соответствующее p-значение — в0.0.
Добавлено в версии 1.1.
- целевая переменная
- Возвращает:
-
- f_statisticndarray of shape (n_features,)
-
F-статистика для каждого признака.
- p_valuesndarray of shape (n_features,)
-
P-значения, соответствующие F-статистике.
См. также
r_regression-
Корреляция Пирсона R между меткой и признаком для задач регрессии.
f_classif-
F-значение ANOVA между меткой и признаком для задач классификации.
chi2-
Статистика хи-квадрат для неотрицательных признаков в задачах классификации.
SelectKBest-
Отбор признаков по k наибольшим оценкам.
SelectFpr-
Отбор признаков на основе теста уровня ложноположительных результатов.
SelectFdr-
Отбор признаков на основе оцененной доли ложных открытий.
SelectFwe-
Отбор признаков на основе семейной вероятности ошибки.
SelectPercentile-
Отбор признаков по процентилю наибольших оценок.
Примеры
>>> from sklearn.datasets import make_regression >>> from sklearn.feature_selection import f_regression >>> X, y = make_regression( ... n_samples=50, n_features=3, n_informative=1, noise=1e-4, random_state=42 ... ) >>> f_statistic, p_values = f_regression(X, y) >>> f_statistic array([1.21, 2.67e13, 2.66]) >>> p_values array([0.276, 1.54e-283, 0.11])
-
Примеры из галереи
© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.feature_selection.f_regression.html