Untitled
import matplotlib.pyplot as plt import pandas as pd # Example of metrics to be used (adjust as needed) metrics = ['DASS_Depression', 'DASS_Angst', 'DASS_Stress', 'Schlaf Test', 'Schriftlicher Gedächtnistest1_numeric', 'Schriftlicher Gedächtnistest2_numeric'] # Mean Comparison Before And After Workshop def plot_mean_comparison(data, metrics): mean_before = data[[f"{metric}_before" for metric in metrics]].mean() mean_after = data[[f"{metric}_after" for metric in metrics]].mean() mean_comparison = pd.DataFrame({ 'Metric': metrics, 'Mean_Before': mean_before.values, 'Mean_After': mean_after.values }) plt.figure(figsize=(10, 6)) bar_width = 0.35 indices = range(len(metrics)) plt.bar([x - bar_width / 2 for x in indices], mean_comparison['Mean_Before'], width=bar_width, label='Before', color='blue', alpha=0.7) plt.bar([x + bar_width / 2 for x in indices], mean_comparison['Mean_After'], width=bar_width, label='After', color='orange', alpha=0.7) plt.xticks(indices, metrics, rotation=45, ha='right') plt.title('Mean Comparison Before and After Workshop') plt.ylabel('Mean Score') plt.xlabel('Metrics') plt.legend(loc='upper left') plt.tight_layout() plt.show() # Mean Comparison Before And After Workshop By Gender def plot_mean_comparison_by_gender(data, metrics): gender_grouped = data.groupby('Geschlecht_before').mean()[[ f"{metric}_before" for metric in metrics] + [f"{metric}_after" for metric in metrics]] gender_grouped = gender_grouped.T gender_grouped.columns = ['Male', 'Female'] gender_grouped.plot(kind='bar', figsize=(12, 6), color=['blue', 'orange'], alpha=0.7) plt.title('Mean Comparison Before and After Workshop by Gender') plt.ylabel('Mean Score') plt.xlabel('Metrics') plt.xticks(rotation=45, ha='right') plt.legend(title='Gender', loc='upper left') plt.tight_layout() plt.show() # Call functions with your data plot_mean_comparison(merged_data, metrics) plot_mean_comparison_by_gender(merged_data, metrics)
Leave a Comment