edit corelation.py and add hr_data_cleaned.csv
parent
bee98b90da
commit
6804054cc6
|
@ -1,40 +1,50 @@
|
||||||
import pandas as pd
|
import pandas as pd
|
||||||
|
|
||||||
# Lade die CSV-Dateien
|
# Schritt 1: Lade die HR-Daten (mit Semikolon separiert) und entferne 'bpm'
|
||||||
# Datei 1 mit Semikolon (;) separiert (HR-Daten)
|
|
||||||
hr_data = pd.read_csv('/home/gra/PycharmProjects/cds_introduction_data_science_assignment/data/raw/hr_gramic.csv', sep=';')
|
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)
|
# Zeige die ersten Zeilen der HR-Daten vor der Bereinigung
|
||||||
sleep_data = pd.read_csv('/home/gra/PycharmProjects/cds_introduction_data_science_assignment/data/raw/sleep_gramic.csv', sep=',')
|
print("HR-Daten (vor der Bereinigung):")
|
||||||
|
|
||||||
# Überprüfen der ersten Zeilen der Dateien
|
|
||||||
print("HR-Daten (vor der Berechnung des Durchschnitts):")
|
|
||||||
print(hr_data.head())
|
print(hr_data.head())
|
||||||
|
|
||||||
# Berechne den Durchschnitt der HR-Daten (zwischen Ruhe und Hoch)
|
# Entferne 'bpm' und konvertiere die Werte in numerische Daten
|
||||||
# Erstelle eine neue Spalte 'avg_hr', die den Durchschnitt von 'Resting HR' und 'High HR' enthält
|
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)
|
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("\nHR-Daten (nach der Berechnung des Durchschnitts):")
|
||||||
print(hr_data.head())
|
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("\nSchlafdaten:")
|
||||||
print(sleep_data.head())
|
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')
|
hr_data = hr_data.sort_values(by='Datum')
|
||||||
sleep_data = sleep_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')
|
combined_data = pd.merge(hr_data, sleep_data, on='Datum')
|
||||||
|
|
||||||
# Überprüfen der kombinierten Daten
|
# Zeige die kombinierten Daten
|
||||||
print("\nKombinierte Daten:")
|
print("\nKombinierte Daten:")
|
||||||
print(combined_data.head())
|
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'])
|
correlation = combined_data['avg_hr'].corr(combined_data['Durchschnittliche Dauer'])
|
||||||
|
|
||||||
print(f"\nDie Korrelation zwischen der durchschnittlichen Herzfrequenz und der Schlafdauer ist: {correlation}")
|
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