Untitled
unknown
python
a year ago
2.2 kB
9
Indexable
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)
Editor is loading...
Leave a Comment