print("-------------------------") print("Validation set case") df = pd.read_csv("dataset/golf.txt") validation_df = pd.read_csv("dataset/golf.txt") config = {'algorithm': 'ID3', 'enableParallelism': enableParallelism} model = cb.fit(df, config, validation_df=validation_df) print("-------------------------") print("Feature importance") #decision_rules = model["trees"][0].__dict__["__name__"]+".py" decision_rules = model["trees"][0].__dict__["__spec__"].origin print(cb.feature_importance(decision_rules)) print("-------------------------") print("ID3 for nominal features and nominal target:") df = pd.read_csv("dataset/golf.txt") config = {'algorithm': 'ID3', 'enableParallelism': enableParallelism} model = cb.fit(df, config) validation_df = pd.read_csv("dataset/golf.txt") print("External validation") cb.evaluate(model, validation_df) cb.save_model(model)
#!pip install chefboost from chefboost import Chefboost as cb import pandas as pd import matplotlib.pyplot as plt if __name__ == '__main__': df = pd.read_csv("golf.txt") config = config = {'algorithm': 'C4.5', 'enableParallelism': True} model = cb.fit(df, config) fi = cb.feature_importance() fi.plot.bar() plt.show()