import numpy as np import pandas as pd from pdpbox import pdp import unittest from sklearn.model_selection import train_test_split from sklearn.tree import DecisionTreeClassifier class TestPdpbox(unittest.TestCase): def test_simple_pdp(self): # set up data data = pd.read_csv("/input/tests/data/fifa_2018_stats.csv") y = (data['Man of the Match'] == "Yes") feature_names = [i for i in data.columns if data[i].dtype in [np.int64]] X = data[feature_names] train_X, val_X, train_y, val_y = train_test_split(X, y, random_state=1) # Build simple model tree_model = DecisionTreeClassifier(random_state=0, max_depth=3).fit(train_X, train_y) # Set up pdp as table pdp_goals = pdp.pdp_isolate(model=tree_model, dataset=val_X, model_features=feature_names, feature='Goal Scored') # make plot pdp.pdp_plot(pdp_goals, 'Goal Scored')