sklearn.feature_selection.GenericUnivariateSelect¶
class sklearn.feature_selection.GenericUnivariateSelect(score_func=<function f_classif>, *, mode='percentile', param=1e-05)
具有可配置策略的单变量特征选择器。
在用户指南中阅读更多内容。
参数 | 说明 |
---|---|
score_func | callable 函数接受两个数组X和y,并返回一对数组(分数,p值)。对于“percentile”或“ kbest”模式,可以返回单个数组分数。 |
mode | {‘percentile’, ‘k_best’, ‘fpr’, ‘fdr’, ‘fwe’} 特征选择模式。 |
param | float or int depending on the feature selection mode 对应模式的参数。 |
属性 | 说明 |
---|---|
scores_ | array-like of shape (n_features,) 特征分数 |
pvalues_ | array-like of shape (n_features,) 特征分数的p值,如果 score_func 仅返回分数,则为None 。 |
另见
标签和特征之间的ANOVA F值,用于分类任务。
离散目标的相互信息。
分类任务的非负特征的卡方统计。
回归任务的标签和特征之间的F值。
共同目标的共同信息。
根据最高分数的百分位数选择功能。
根据k个最高分数选择特征。
根据误报率测试选择功能。
根据估计的错误发现率选择功能。
根据多重比较错误率选择特征。
示例
>>> from sklearn.datasets import load_breast_cancer
>>> from sklearn.feature_selection import GenericUnivariateSelect, chi2
>>> X, y = load_breast_cancer(return_X_y=True)
>>> X.shape
(569, 30)
>>> transformer = GenericUnivariateSelect(chi2, mode='k_best', param=20)
>>> X_new = transformer.fit_transform(X, y)
>>> X_new.shape
(569, 20)
方法
方法 | 说明 |
---|---|
fit (X, y) |
在(X,y)上运行score函数并获得适当的特征。 |
fit_transform (X[, y]) |
拟合数据,然后对其进行转换。 |
get_params ([deep]) |
获取此估计器的参数。 |
get_support ([indices]) |
获取所选特征的掩码或整数索引 |
inverse_transform (X) |
反向转换操作 |
set_params (**params) |
设置此估计器的参数。 |
transform (X) |
将X缩小为选定的特征。 |
__init__(score_func=<function f_classif>, *, mode='percentile', param=1e-05)
初始化self,参见help(type(self))获取更多信息。
fit(X, y)
在(X, y)上运行score函数,得到相应的特征。
参数 | 说明 |
---|---|
X | array-like of shape (n_samples, n_features) 训练样本。 |
y | array-like of shape (n_samples,) 目标值(分类中的类标签,回归中的真实值)。 |
返回值 | 说明 |
---|---|
self | object |
fit_transform(X, y=None, **fit_params)
拟合数据,然后对其进行转换。
使用可选参数fit_params将转换器拟合到X和y,并返回X的转换值。
参数 | 说明 |
---|---|
X | {array-like, sparse matrix, dataframe} of shape (n_samples, n_features) |
y | ndarray of shape (n_samples,), default=None 目标值 |
**fit_params | dict 其他拟合参数。 |
返回值 | 说明 |
---|---|
X_new | ndarray array of shape (n_samples, n_features_new) 转换后的数组。 |
get_params(deep=True)
获取此估计器的参数。
参数 | 说明 |
---|---|
deep | bool, default=True 如果为True,则将返回此估算器和所包含子对象的参数。 |
返回值 | 说明 |
---|---|
params | mapping of string to any 参数名称映射到其值。 |
get_support(indices=False)
获取所选特征的掩码或整数索引。
参数 | 说明 |
---|---|
indices | boolean (default False) 如果为True,则返回值将是一个整数数组,而不是布尔掩码。 |
返回值 | 说明 |
---|---|
support | array 从特征向量中选择保留特征的索引。如果 indices 为False,则为形状为[#输入特征]的布尔数组,其中元素为True时(如果已选择其对应的特征进行保留)。如果indices 为True,则这是一个形状为[#输出特征]的整数数组,其值是输入特征向量的索引。 |
inverse_transform(X)
反向转换操作
参数 | 说明 |
---|---|
X | array of shape [n_samples, n_selected_features] 输入样本。 |
返回值 | 说明 |
---|---|
X_r | array of shape [n_samples, n_original_features]X 中插入的列名为零的特征将被transform 删除。 |
set_params(**params)
设置此估算器的参数。
该方法适用于简单的估计器以及嵌套对象(例如管道)。后者具有<component>__<parameter>
形式的参数, 以便可以更新嵌套对象的每个组件。
参数 | 说明 |
---|---|
**params | dict 估计器参数。 |
返回值 | 说明 |
---|---|
self | object 估计器实例。 |
transform(X)
参数 | 说明 |
---|---|
X | array of shape [n_samples, n_features] 输入样本。 |
返回值 | 说明 |
---|---|
X_r | array of shape [n_samples, n_selected_features] 仅具有所选特征的输入样本。 |