У меня есть набор данных для построения Классификатора:Как получить список бесполезных функций с помощью sklearn?
dataset = pd.read_csv(sys.argv[1], decimal=",",delimiter=";", encoding='cp1251')
X=dataset.ix[:, dataset.columns != 'class']
Y=dataset['class']
Я хочу, чтобы выбрать только важные функции, так что я:
clf=svm.SVC(probability=True, gamma=0.017, C=5, coef0=0.00001, kernel='linear', class_weight='balanced')
model = SelectFromModel(clf, prefit=True)
X_train, X_test, Y_train, Y_test = cross_validation.train_test_split(X, Y, test_size=0.5, random_state=5)
y_pred=clf.fit(X_train, Y_train).predict(X_test)
X_new = model.transform(X)
Так X_new имеет форму 3000x72 в то время как X был 3000x130. Я хотел бы получить список функций, которые есть и не находятся в X_new. Как мне это сделать?
X - это кадр данных с заголовком, но X_new представляет собой список списков со значениями значений без какого-либо имени, поэтому я не могу объединить его, как я бы делал в пандах. Благодарим за помощь!
Не могли бы вы привести пример, как только несколько строк о том, как выглядят «X_new» и «X» и какими будут результаты для него? –