from sklearn.datasets import load_iris
from sklearn.metrics import roc_auc_score
from sklearn.ensemble import RandomForestClassifier
iris = load_iris()
X, y = iris.data, iris.target
class_weights = {0: 0.3, 1: 0.4, 2: 0.3}
y_scores = []
for i in range(len(set(y))):
y_true = (y == i)
y_prob = clf.predict_proba(X)[:, i]
score = roc_auc_score(y_true, y_prob)
y_scores.append(score * class_weights[i])
print("Weighted AUC:", sum(y_scores))