Отслеживание имен объектов при выборе объектов - PullRequest
1 голос
/ 29 апреля 2020

При выполнении выбора функции с помощью функции feature_selection из sklearn, есть ли способ отслеживать реальные имена объектов вместо значений по умолчанию "f1", "f2" и т. Д. c ... ? У меня огромное количество функций, поэтому я не могу отслеживать их вручную. Очевидно, я могу написать код для этого, но мне интересно, есть ли какой-то простой вариант, который я могу установить.

1 Ответ

2 голосов
/ 29 апреля 2020

Если у вас есть pandas фрейм данных, вы можете возвращать имена столбцов, выбранных функцией, вам просто нужно использовать get_support метод.

Здесь у вас есть быстрый пример с некоторыми изменениями из официальной документации .

import pandas as pd
from sklearn.feature_selection import SelectFromModel
from sklearn.linear_model import LogisticRegression
X = [[ 0.87, -1.34,  0.31, 0],
     [-2.79, -0.02, -0.85, 1],
     [-1.34, -0.48, -2.55, 0],
     [ 1.92,  1.48,  0.65, 1]]

df = pd.DataFrame(X, columns=['col1', 'col2', 'col3', 'label'])
train_x = df.loc[:, ['col1',  'col2', 'col3']]
y = df.label
selector = SelectFromModel(estimator=LogisticRegression()).fit(train_x, y)

col_index = selector.get_support()
print(train_x.columns[col_index])
# output print --> Index(['col2'], dtype='object') 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...