I am getting all scores for my ML model as 100% for the Extra Trees Algorithm. I am applying the necessary pre-processing steps (duplication removal, correlations validating, cardinality validation, and missing values handling). Is this okay to have this kind of result?
Here is my code
std_features_train, std_features_test , std_output_train, std_output_test = train_test_split(encoded_balanced_std_scaled_emp_data.drop("leave", axis=1),encoded_balanced_std_scaled_emp_data['leave'],train_size=0.7)
model_std = ExtraTreesClassifier()
model_std.fit(std_features_train,std_output_train)
model_predictions_std = model_std.predict(std_features_test)
model_train_score = model_std.score(std_features_train,std_output_train)
model_test_score = model_std.score(std_features_test,std_output_test)
model_f1_score = f1_score(std_output_test, model_predictions_std, average='binary')
model_precision_score=precision_score(std_output_test, model_predictions_std, average='binary')
model_recall_score=recall_score(std_output_test, model_predictions_std, average='binary')
model_r2_score = r2_score(std_output_test,model_predictions_std)
model_mse_score=mean_squared_error(std_output_test, model_predictions_std)
std_results_table.add_row([model_std.__class__.__name__,round(model_train_score*100,2),
round(model_test_score*100,2), round(model_r2_score*100,2),
round(model_mse_score*100,2), round(model_f1_score*100,2),
round(model_precision_score*100,2),
round(model_recall_score*100,2)])