import pandas as pd # Schritt 1: Lade die HR-Daten (mit Semikolon separiert) und entferne 'bpm' hr_data = pd.read_csv('/home/gra/PycharmProjects/cds_introduction_data_science_assignment/data/raw/hr_gramic.csv', sep=';') # Zeige die ersten Zeilen der HR-Daten vor der Bereinigung print("HR-Daten (vor der Bereinigung):") print(hr_data.head()) # Entferne 'bpm' und konvertiere die Werte in numerische Daten hr_data['In Ruhe'] = hr_data['In Ruhe'].str.replace(' bpm', '').astype(float) hr_data['Hoch'] = hr_data['Hoch'].str.replace(' bpm', '').astype(float) # Zeige die bereinigten HR-Daten print("\nHR-Daten (nach der Entfernung von 'bpm'):") print(hr_data.head()) # Speichere die bereinigten HR-Daten in eine neue CSV-Datei (Zwischendatei) hr_data.to_csv('hr_data_cleaned.csv', sep=';', index=False) print("\nBereinigte HR-Daten wurden in '/home/gra/PycharmProjects/cds_introduction_data_science_assignment/data/raw/hr_data_cleaned.csv' gespeichert.") # Schritt 2: Berechne den Durchschnitt der Herzfrequenzdaten (Resting HR und High HR) hr_data['avg_hr'] = hr_data[['In Ruhe', 'Hoch']].mean(axis=1) # Zeige die HR-Daten nach der Berechnung des Durchschnitts print("\nHR-Daten (nach der Berechnung des Durchschnitts):") print(hr_data.head()) # Schritt 3: Lade die Schlafdaten (mit Komma separiert) sleep_data = pd.read_csv('/home/gra/PycharmProjects/cds_introduction_data_science_assignment/data/raw/sleep_gramic.csv', sep=',') # Zeige die Schlafdaten print("\nSchlafdaten:") print(sleep_data.head()) # Schritt 4: Sicherstellen, dass beide Datensätze nach 'week' sortiert sind hr_data = hr_data.sort_values(by='Datum') sleep_data = sleep_data.sort_values(by='Datum') # Schritt 5: Kombiniere die beiden Datensätze anhand der 'week' Spalte combined_data = pd.merge(hr_data, sleep_data, on='Datum') # Zeige die kombinierten Daten print("\nKombinierte Daten:") print(combined_data.head()) # Schritt 6: Berechne die Korrelation zwischen dem durchschnittlichen Herzfrequenzwert ('avg_hr') und der Schlafdauer ('sleep_duration') correlation = combined_data['avg_hr'].corr(combined_data['Durchschnittliche Dauer']) print(f"\nDie Korrelation zwischen der durchschnittlichen Herzfrequenz und der Schlafdauer ist: {correlation}")