|
|
Daten eingrenzen auf bestimmte Wertebereiche |
|
Dune |

Forum-Newbie
|
 |
Beiträge: 9
|
 |
|
 |
Anmeldedatum: 15.06.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 15.06.2011, 12:53
Titel: Daten eingrenzen auf bestimmte Wertebereiche
|
 |
|
 |
|
Hallo,
dies ist mein erster Beitrag. Ich habe anhand der Suchfunktion schon versucht mein Problem zu lösen, leider ist mir dies nicht gelungen.
Ich werde es mal schildern.
Ich habe einen Geschwindigkeitsverlauf über der Zeit erhalten. Diesen habe ich erstmal filtern lassen, damit ich Geschwindigkeitsspitzen herausbekomme.
Dies ging ganz gut.
Nun möchte ich meinen Geschwindigkeitsverlauf nur auf Geschwindigkeiten unter 40km/h untersuchen. Dies hat auch noch geklappt.
Im nächsten Schritt wäre es aber sinnvoll, dass er mir nur noch die Geschwindigkeit unter 40km/h plottet bzw analysiert, wenn der Zeitbereich mindestens 60Sekunden beträgt.
Ich habe dies versucht, allerdings ist im Zeitbereich von 60 Sekunden meine Geschwindigkeit nicht durchgängig unter 40km/h , sondern er gibt mir alle Zeitbereiche aus, in denen die Geschwindigkeit unter 40km/h liegt und summiert deren Zeit auf und überprüft ob diese Summe größer 60 Sekunden ist. Ich möchte es allerdings so, dass er nur einen Zeitbereich ausgibt , der größer 60 Sekunden ist und nicht viele kleine Zeitbereiche (Beispiel 20 Zeitbereiche a 3 Sekunden).
Hier mein Code:
Ich wäre euch sehr dankbar, wenn einer mein Problem lösen könnte.
|
|
|
|
|
eupho |

Forum-Meister
|
 |
Beiträge: 777
|
 |
|
 |
Anmeldedatum: 07.01.09
|
 |
|
 |
Wohnort: Marburg
|
 |
|
 |
Version: R2009b
|
 |
|
|
 |
|
Verfasst am: 15.06.2011, 13:04
Titel:
|
 |
Sind deine Geschwindigkeitswerte in äquidistanten Zeitintervallen?
Dann könntest du einfach bei den Indizes von v_stau schauen, wann eine Änderung passiert, sprich wenn diff(v_stau) > 1 ist.
Dann müsste diff(diff(v_stau) > 1) deine nicht normierten Zeiten entsprechen, dort kannst du dann schauen, welche größer einer festgelegten Schwelle sind.
|
|
|
Dune |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 9
|
 |
|
 |
Anmeldedatum: 15.06.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 15.06.2011, 14:30
Titel:
|
 |
Vielen Dank für die Antwort.
Ja, meine Geschwindigkeitswerte sind äquidistant. Sie wurden im Abstand von 0.004 Sekunden aufgezeichnet.
Mit dem Befehl diff(v_stau) > 1 erhalte ich leider nur 0 über dem gesamten Bereich. Wenn ich diff(v_x_new) eingebe, zeigt er mir natürlich die Geschwindigkeitsdifferenzen von einem zum nächsten Messpunkt auf. Leider kann ich daraus nicht schließen, wann ich unter 40km/h liege, da auch im Bereich darunter gewisse Schwankungen der Geschwindigkeit vorliegen.
Eventuell kann es aber auch sein, dass ich deine Antwort falsch interpretiere.
|
|
|
eupho |

Forum-Meister
|
 |
Beiträge: 777
|
 |
|
 |
Anmeldedatum: 07.01.09
|
 |
|
 |
Wohnort: Marburg
|
 |
|
 |
Version: R2009b
|
 |
|
|
 |
|
Verfasst am: 15.06.2011, 15:18
Titel:
|
 |
Ja, ich hatte mit diff() einen Denkfehler, pardon. Ich stehe trotzdem gerade auf dem Schlauch. Du hast in v_stau ja bereits die Indizes und musst nur noch schauen, wo mindestens 60/0.004 = 15000 Werte am Stück 1 (also true) sind.
Was ich gerade verzweifelt versuche ist, wie man von
auf
kommt. (EDIT: Ohne Schleife natürlich!)
|
|
|
eupho |

Forum-Meister
|
 |
Beiträge: 777
|
 |
|
 |
Anmeldedatum: 07.01.09
|
 |
|
 |
Wohnort: Marburg
|
 |
|
 |
Version: R2009b
|
 |
|
|
 |
|
Verfasst am: 15.06.2011, 15:37
Titel:
|
 |
Nicht schön (da nicht vektorisiert), funktioniert aber:
Jan S. schaut später sicherlich noch mit einer vekorisierten Version vorbei
|
|
|
Dune |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 9
|
 |
|
 |
Anmeldedatum: 15.06.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 16.06.2011, 11:31
Titel:
|
 |
Vielen Dank,
ich habe den Code verwenden können und es läuft.
Bin dabei, das Programm nun zu verfeinern. Sollte mir ein erneutes Problem über den Weg laufen,weiß ich ja jetzt, dass mir gut geholfen wird.
Danke,
Gruß Dune
|
|
|
|
|
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.
|
|