Я хочу выполнить анализ Chi2 для оценки характеристик моего набора данных, но результаты включают значения nan
.Почему в результатах появились значения nan и как я могу решить проблему?Например, в следующем примере, какова оценка важности второй функции?
from sklearn.feature_selection import chi2
from sklearn.feature_selection import SelectKBest
X = np.array([[0. , 0. , 0.968 , 0.57894737, 0.46666667],
[0. , 0. , 0.968 , 0.65789474, 0. ],
[0.5 , 0. , 0.968 , 0.65789474, 0.55 ],
[0. , 0. , 0.968 , 0.65789474, 0. ],
[0. , 0. , 0.968 , 0.65789474, 0. ],
[0. , 0. , 0.968 , 0.55263158, 0.56666667],
[0. , 0. , 0.968 , 0.71052632, 0.41666667],
[0. , 0. , 0.968 , 0.42105263, 0. ],
[0. , 0. , 0.968 , 0.42105263, 0. ],
[0. , 0. , 0.968 , 0.55263158, 0. ]])
y = np.array([[1],
[0],
[1],
[1],
[0],
[1],
[1],
[0],
[1],
[0]])
chi2_selector = SelectKBest(score_func=chi2, k=3)
X_kbest = chi2_selector.fit_transform(X, y)
chi2_selector.scores_
Вывод:
(array([0.33333333, nan, 0. , 0.00237983, 1.33333334]),
array([0.56370286, nan, 1. , 0.96109184, 0.24821308]))