python sklearn 特征选择 mutual_info_regression

python sklearn features selection mutual_info_regression

mutual_info_regression预装n_neighbors=3 此代码适用于 n_neighbors=3:

selector = SelectKBest(mutual_info_regression, k='all').fit(X, y)

mutual_info_regression 中请求 n_neighbors=2

不工作变体:

selector = SelectKBest(mutual_info_regression, k='all').fit(X, y,**{'n_neighbors':2})
selector = SelectKBest(mutual_info_regression(**{'n_neighbors':2}), k='all').fit(X, y)
selector = SelectKBest(mutual_info_regression(n_neighbors=2), k='all').fit(X, y)
selector = SelectKBest(mutual_info_regression,n_neighbors=2, k='all').fit(X, y)

scoring = make_scorer(mutual_info_regression, greater_is_better=True, n_neighbors = 2)

selector = SelectKBest(scoring, k='all').fit(feat, targ)

您可以使用 pythons partial 函数创建具有非默认值的记分器:

from functools import partial
scorer_function = partial(mutual_info_regression, n_neighbors=2)
selector = SelectKBest(scorer_function, k='all').fit(X, y)