edit corelation.py and add hr_data_cleaned.csv
parent
bee98b90da
commit
6804054cc6
|
@ -1,40 +1,50 @@
|
|||
import pandas as pd
|
||||
|
||||
# Lade die CSV-Dateien
|
||||
# Datei 1 mit Semikolon (;) separiert (HR-Daten)
|
||||
# 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=';')
|
||||
|
||||
# Datei 2 mit Komma (,) separiert (Schlafdaten)
|
||||
sleep_data = pd.read_csv('/home/gra/PycharmProjects/cds_introduction_data_science_assignment/data/raw/sleep_gramic.csv', sep=',')
|
||||
|
||||
# Überprüfen der ersten Zeilen der Dateien
|
||||
print("HR-Daten (vor der Berechnung des Durchschnitts):")
|
||||
# Zeige die ersten Zeilen der HR-Daten vor der Bereinigung
|
||||
print("HR-Daten (vor der Bereinigung):")
|
||||
print(hr_data.head())
|
||||
|
||||
# Berechne den Durchschnitt der HR-Daten (zwischen Ruhe und Hoch)
|
||||
# Erstelle eine neue Spalte 'avg_hr', die den Durchschnitt von 'Resting HR' und 'High HR' enthält
|
||||
# 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)
|
||||
|
||||
# Überprüfen der ersten Zeilen nach dem Hinzufügen der 'avg_hr' Spalte
|
||||
# Zeige die HR-Daten nach der Berechnung des Durchschnitts
|
||||
print("\nHR-Daten (nach der Berechnung des Durchschnitts):")
|
||||
print(hr_data.head())
|
||||
|
||||
# Überprüfen der ersten Zeilen der Schlafdaten
|
||||
# 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())
|
||||
|
||||
# Sicherstellen, dass beide Datensätze nach Woche sortiert sind
|
||||
# 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')
|
||||
|
||||
# Kombinieren der beiden Datensätze anhand der 'week' Spalte
|
||||
# Schritt 5: Kombiniere die beiden Datensätze anhand der 'week' Spalte
|
||||
combined_data = pd.merge(hr_data, sleep_data, on='Datum')
|
||||
|
||||
# Überprüfen der kombinierten Daten
|
||||
# Zeige die kombinierten Daten
|
||||
print("\nKombinierte Daten:")
|
||||
print(combined_data.head())
|
||||
|
||||
# Berechne die Korrelation zwischen dem durchschnittlichen Herzfrequenzwert ('avg_hr') und der Schlafdauer ('sleep_duration')
|
||||
# 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}")
|
||||
|
|
|
@ -0,0 +1,53 @@
|
|||
Datum;In Ruhe;Hoch
|
||||
Okt 4-10;67.0;130.0
|
||||
Sep 27 - Okt 3;67.0;143.0
|
||||
Sep 20-26;66.0;149.0
|
||||
Sep 13-19;66.0;144.0
|
||||
Sep 6-12;62.0;132.0
|
||||
Aug 30 - Sep 5;64.0;141.0
|
||||
Aug 23-29;67.0;150.0
|
||||
Aug 16-22;63.0;143.0
|
||||
Aug 9-15;69.0;141.0
|
||||
Aug 2-8;67.0;140.0
|
||||
Jul 26 - Aug 1;67.0;147.0
|
||||
Jul 19-25;69.0;136.0
|
||||
Jul 12-18;66.0;151.0
|
||||
Jul 5-11;67.0;146.0
|
||||
Jun 28 - Jul 4;66.0;157.0
|
||||
Jun 21-27;64.0;141.0
|
||||
Jun 14-20;70.0;145.0
|
||||
Jun 7-13;69.0;134.0
|
||||
Mai 31 - Jun 6;70.0;139.0
|
||||
Mai 24-30;72.0;142.0
|
||||
Mai 17-23;72.0;135.0
|
||||
Mai 10-16;71.0;147.0
|
||||
Mai 3-9;73.0;142.0
|
||||
Apr 26 - Mai 2;69.0;151.0
|
||||
Apr 19-25;61.0;135.0
|
||||
Apr 12-18;58.0;140.0
|
||||
Apr 5-11;64.0;131.0
|
||||
Mrz 29 - Apr 4;63.0;139.0
|
||||
Mrz 22-28;65.0;135.0
|
||||
Mrz 15-21;66.0;137.0
|
||||
Mrz 8-14;62.0;136.0
|
||||
Mrz 1-7;70.0;134.0
|
||||
Feb 23-29;68.0;144.0
|
||||
Feb 16-22;71.0;132.0
|
||||
Feb 9-15;65.0;143.0
|
||||
Feb 2-8;66.0;133.0
|
||||
Jan 26 - Feb 1;59.0;142.0
|
||||
Jan 19-25;62.0;136.0
|
||||
Jan 12-18;60.0;134.0
|
||||
Jan 5-11;56.0;139.0
|
||||
Dez 29, 2023 - Jan 4, 2024;59.0;128.0
|
||||
Dez 22-28, 2023;52.0;124.0
|
||||
Dez 15-21, 2023;57.0;133.0
|
||||
Dez 8-14, 2023;65.0;133.0
|
||||
Dez 1-7, 2023;69.0;134.0
|
||||
Nov 24-30, 2023;68.0;139.0
|
||||
Nov 17-23, 2023;68.0;143.0
|
||||
Nov 10-16, 2023;64.0;144.0
|
||||
Nov 3-9, 2023;63.0;140.0
|
||||
Okt 27 - Nov 2, 2023;57.0;133.0
|
||||
Okt 20-26, 2023;55.0;138.0
|
||||
Okt 13-19, 2023;50.0;121.0
|
|
Loading…
Reference in New Issue