Preview:
prec = precision_score(y_test, (y_prob> threshold))
f1_sc = f1_score(y_test, (y_prob> threshold))

# Permutation feature importance
feature_importance_scores = []
for feature in X_train_required.columns:
    X_permuted = X_test_required.copy()
    X_permuted[feature] = np.random.permutation(X_permuted[feature])
    permuted_preds = cb_model.predict(X_permuted)
    permuted_prec = precision_score(y_test, permuted_preds)
    feature_importance = prec - permuted_prec
    feature_importance_scores.append((feature, feature_importance))
# feature_importance_scores.sort(key=lambda x: x[1], reverse=True)
feat=[]
imp=[]
for feature, importance in feature_importance_scores:
    feat.append(feature)
    imp.append(importance)   
    # print(f"Feature: {feature}, Importance: {importance}")
feature_imp = pd.DataFrame(columns=['Feature', 'Importance'])
feature_imp['Feature']=feat
feature_imp['Importance']=imp
feature_imp.sort_values(by='Importance', ascending=False, inplace=True)
feature_imp.to_csv('OMI-trans-perm.csv')
downloadDownload PNG downloadDownload JPEG downloadDownload SVG

Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!

Click to optimize width for Twitter