В дополнительном древовидном классификаторе отсутствует аргумент y - PullRequest
0 голосов
/ 27 февраля 2020

Поэтому я пытался реализовать Extra Tree Classifier, чтобы найти важность параметров в моей базе данных, я написал этот простой код, но по какой-то причине я продолжаю получать эту ошибку.

Мой код:

import numpy as np

import pandas as pd

import matplotlib.pyplot as plt

%matplotlib inline


from sklearn.ensemble import ExtraTreesClassifier 



df = pd.read_csv('C:\\Users\\ali97\\Desktop\\Project\\Database\\5-FINAL2\\Final After Simple Filtering.csv')

extra_tree_forest = ExtraTreesClassifier(n_estimators = 5,  criterion ='entropy', max_features = 2) 

extra_tree_forest.fit(df)

feature_importance = extra_tree_forest.feature_importances_ 

feature_importance_normalized = np.std([tree.feature_importances_ for tree in extra_tree_forest.estimators_], axis = 1)

plt.bar(X.columns, feature_importance_normalized) 
plt.xlabel('Lbale') 
plt.ylabel('Feature Importance') 
plt.title('Parameters Importance') 
plt.show() 

Ошибка:

TypeError                                 Traceback (most recent call last)
<ipython-input-7-4aad8882ce6d> in <module>
     16 extra_tree_forest = ExtraTreesClassifier(n_estimators = 5,  criterion ='entropy', max_features = 2)
     17 
---> 18 extra_tree_forest.fit(df)
     19 
     20 feature_importance = extra_tree_forest.feature_importances_

TypeError: fit() missing 1 required positional argument: 'y'


Спасибо

1 Ответ

1 голос
/ 27 февраля 2020

Обычно для функции подгонки нам нужны атрибуты (X) и метки (Y), и вам нужно использовать extra_tree_forest.fit(X, Y) для обучения этого классификатора. Я рекомендую разделять метки и атрибуты и импортировать их как два отдельных списка при импорте Final After Simple Filtering.csv.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...