input: Write a python function to evaluate the performance of different classifiers using stratified k-fold cross-validation.
  assert 'LogisticRegression' in evaluate_classifiers()['LogisticRegression']
  assert 'KNeighborsClassifier' in evaluate_classifiers()['KNeighborsClassifier']
  assert 'DecisionTreeClassifier' in evaluate_classifiers()['DecisionTreeClassifier']
  assert 'SVC' in evaluate_classifiers()['SVC']
  assert 'RandomForestClassifier' in evaluate_classifiers()['RandomForestClassifier']
output: def evaluate_classifiers():
      from sklearn.model_selection import StratifiedKFold, cross_val_score
      from sklearn.datasets import load_iris
      from sklearn.linear_model import LogisticRegression
      from sklearn.neighbors import KNeighborsClassifier
      from sklearn.tree import DecisionTreeClassifier
      from sklearn.svm import SVC
      from sklearn.ensemble import RandomForestClassifier
      import numpy as np
  
      # Load dataset
      data = load_iris()
      X, y = data.data, data.target
  
      # Prepare classifiers
      classifiers = {
          'LogisticRegression': LogisticRegression(max_iter=1000),
          'KNeighborsClassifier': KNeighborsClassifier(),
          'DecisionTreeClassifier': DecisionTreeClassifier(),
          'SVC': SVC(),
          'RandomForestClassifier': RandomForestClassifier()
      }
  
      # Stratified K-Fold Cross Validation
      skf = StratifiedKFold(n_splits=5)
      
      results = {}
      for name, clf in classifiers.items():
          cv_scores = cross_val_score(clf, X, y, cv=skf)
          results[name] = {
              'mean_accuracy': np.mean(cv_scores),
              'std_accuracy': np.std(cv_scores),
              'raw_scores': cv_scores
          }
      
      return results