|
|
Vektor in Intervalle aufteilen |
|
Matthias21 |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.02.2010, 23:40
Titel: Vektor in Intervalle aufteilen
|
 |
Hallo an alle,
es geht um folgendes Problem: Ich habe eine zeitliche Messreihe (Messung des Herzschlags über 24h) als Vektor eingelesen, der natürlich eine ganze Reihe an Werten enthält. Nun soll ich diesen Vektor in 5 min Intervalle aufteilen und jeweils den Mittelwert daraus bestimmen.
Die Bestimmung des Mittelwertes wäre kein Problem, aber ich habe keine Ahnung wie ich den Vektor aufsplitten soll
Wäre sehr froh, wenn mir jemand weiterhelfen könnte.
Vielen Dank im voraus
Matthias
|
|
|
|
|
Daedalus |

Forum-Anfänger
|
 |
Beiträge: 13
|
 |
|
 |
Anmeldedatum: 09.01.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.02.2010, 23:55
Titel:
|
 |
Hallo Matthias,
wenn du nur die Mittelwerte benötigst würde ich den Vektor durchgehen und das Ergebnis in einen anderen Vektor schreiben.
Beispiel
hilft dir das weiter?
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 02.02.2010, 23:58
Titel:
|
 |
Hallo,
wenn die Zeitunterteilung gleichmässig ist, probier mal:
1. Schauen, wieviele Werte in ein 5-Min-Intervall passen -> N
2.
Grüße,
Harald
|
|
|
Daedalus |

Forum-Anfänger
|
 |
Beiträge: 13
|
 |
|
 |
Anmeldedatum: 09.01.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 03.02.2010, 00:00
Titel:
|
 |
Haralds Lösung ist an Eleganz nicht zu übertreffen!
Respekt!
|
|
|
Matthias21 |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 03.02.2010, 00:08
Titel:
|
 |
Hallo,
Vielen Dank erst mal für die Antworten.
Das Problem ist, dass das Herz nicht wirklich gleichmäßig schlägt, d.h., dass sich in jedem Intervall unterschiedlich viele Werte befinden.
Die Unterschiede werden zwar nicht groß sein, aber so was muss man ja nun mal genau machen
|
|
|
Daedalus |

Forum-Anfänger
|
 |
Beiträge: 13
|
 |
|
 |
Anmeldedatum: 09.01.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 03.02.2010, 00:29
Titel:
|
 |
In dem Fall musst du wohl in den Daten wühlen.
Woran identifizierst du die Zeit? Ist diese gegeben?
Könntest du eine Beispiel-Zip anhängen?
|
|
|
Matthias21 |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 03.02.2010, 01:21
Titel:
|
 |
Hallo Daedalus
Danke für deine Mühe erstmal.
Die Zeit ist gegeben. Bei der Messreihe wurde der jeweilige Zeitpunkt eines Herzschlages über 24 Stunden gemessen. Das sieht dann in etwa so aus:
0.7543 (Zeitpunkt 1. Herzschlag in Sekunden)
1.4390 (Zeitpunkt 2. Herzschlag)
2.2156 (Zeitpunkt 3. Herzschlag)
.
.
301.2345
.
.
Und ich muss diesen Vektor in 300 Sekunden Intervalle aufspalten. Insgesamt schlägt das Herz aber über 100.000 mal, der Vektor ist also sehr groß, deshalb brauch ich wohl ne Schleife oder einen bestimmten Befehl.
|
|
|
Daedalus |

Forum-Anfänger
|
 |
Beiträge: 13
|
 |
|
 |
Anmeldedatum: 09.01.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 03.02.2010, 10:12
Titel:
|
 |
ok, dann würde ich folgendes machen
herzschlagvektor ist gegeben, jede Minute ein Wert
increment gibt die laenge des vektors an über den gemittelt werden soll
die laenge von herzschlagvektorMittelwert ist durch den maximale Sekundenwert / 300 gegeben
Der Algorithmus läuft wie folgt ab: erst suchen wir in den Zeitwerten den Inidize für das Ende der Zeitspanne ( 1. Zeitspanne 0-<300, 2. Zeitspanne 300-<600) Dazu nutzen wird "find".
gib mal ne Rückmeldung ob das funktioniert hat
Wenn der Algorithmus sehr lange dauert könntest du auch den Befehl find leicht modifizieren: imo sucht der im ganzen Vektor, da du aber eine "Vorahnung" hast wie weit die einzelnen Intervalle auseinander sind könntest du auch folgendes versuchen
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 03.02.2010, 10:37
Titel:
|
 |
Hallo,
Edit: ich gehe davon aus, dass man quasi die über jeweils 5 Minuten gemittelte Herzschlagrate ermitteln möchte. Wenn etwas anderes gewünscht wird, könnte das zweite Rückgabeargument von histc helfen.
histc könnte helfen:
Grüße,
Harald
|
|
|
fleischcracker. |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 25.05.2011, 13:22
Titel:
|
 |
Harald hat Folgendes geschrieben: |
Hallo,
wenn die Zeitunterteilung gleichmässig ist, probier mal:
1. Schauen, wieviele Werte in ein 5-Min-Intervall passen -> N
2.
Grüße,
Harald |
Harald ud bist der Größte!!!
Danke, genau das habe ich gesucht!!!
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|