|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 21.03.2013, 21:22
Titel: Spikes
|
 |
Hallo Matlabfreunde,
mein simuliertes Messgerät könnte mir Daten mit Spikes liefern. Die Abweichungen von erwarteten Wertveerlauf können positiv wie auch negativ sein.
Bislang habe ich versucht mit:
abzufangen, also wenn aufeinanderfolgende Werte eine Differenez von 5 hat, wird es erkannt.
Doch gibt es eine bessere Möglichkeit es abzufangen?
|
|
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 21.03.2013, 23:34
Titel:
|
 |
Hallo,
inwiefern soll es denn besser sein? Viel kompakter kann nicht gehen.
Grüße,
Harald
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 22.03.2013, 20:44
Titel:
|
 |
Das Problem ist halt folgendermaßen zu sehen, beispielsweise wenn ich zwei arrays hätte
A = [0 1 2 3 0 1 2 3 4 2 -30 -31 -32 -30 - 25]
B = [0 1 2 3 0 1 2 3 4 2 -30 -31 2 3 1 5 6 ]
Laut meinem Filter wird der Wert von 2 auf -30 als Spike angesehen.
Bei dem Array B ist es der Fall, doch bei A verhält es sich wieder normal.
Würde gerne sowas abfangen!
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 23.03.2013, 00:04
Titel:
|
 |
Hallo,
du fängst mit deinem Befehl lediglich ab, wenn (neuer Wert - alter Wert) > 5. Wenn du Sprünge in beide Richtungen abfangen willst, musst du eben den Betrag nehmen:
Grüße,
Harald
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 23.03.2013, 01:08
Titel:
|
 |
Ich habe mich nicht gut ausgedrückt.
Bei dem Beispielarray A, da wechselt ja die Amplitude um -30. Dies ist für mich kein spike sondern korrekter verlauf. weil die nächsten werte nach dem sprung sich halt um die -30 bewegen.
Wobei bei dem Beispiel B von 2 auf -30 und danach wieder auf 2 gesprungen wird.
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.03.2013, 14:56
Titel:
|
 |
ist es immer noch nicht klar genug
|
|
|
Nras |

Forum-Meister
|
 |
Beiträge: 608
|
 |
|
 |
Anmeldedatum: 21.02.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 7.12.0.635 (R2011a)
|
 |
|
|
 |
|
Verfasst am: 24.03.2013, 15:35
Titel:
|
 |
Hallo,
ich fürchte, zuerst musst Du genauer werden. Ist bei Dir definiert, wie lang so eine Folge von Werten maximal sein darf, damit es ein Spike ist? Dann könntest du nach Haralds Vorschlag
einfach den Abstand zwischen zwei Einsen auslesen. Ist der Abstand klein genug, dann ist es ein Spike, ansonsten verhält es sich "normal".
Viele Grüße,
Nras.
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 25.03.2013, 19:55
Titel:
|
 |
Ein kleines problem hätte ich auch noch
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 25.03.2013, 20:08
Titel:
|
 |
Hallo,
Bitte poste neue Fragen in einem neuen Thema. Beim sog. Thread-Highjacking verwirrt es, das niemand mehr weiß, welche Antworten zu welchen Fragen gehören.
Du erstellst zuerst einen [1000 x 1] Vektor. DIFF(A) gibt dann einen [999 x 1] Vektor aus, weil es ja eine Differenz weniger gibt als Elemente. Das kann man dann aber nicht mehr horizontal zusammenfügen.
Gruß, Jan
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 25.03.2013, 21:41
Titel:
|
 |
Hallo,
in Ergänzung zu Jans Kommentar:
setzt voraus, dass A ein Zeilenvektor ist. Wenn A ein Spaltenvektor ist, dann geht
Und bitte sage wenigstens, ob eine Frage beantwortet ist, bevor du die nächste dranhängst.
Grüße,
Harald
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 28.03.2013, 18:42
Titel:
|
 |
eine frage hätte ich dennoch und zwar wie kann man jetzt gefundene bereiche beim plotten farblich darstellen. ich könnte jetzt beispielsweise bar funktion nehmen.. wie lässt sich das realisieren.
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 28.03.2013, 20:30
Titel:
|
 |
Hallo,
Es ist effizienter, wenn Du zeigst, was Du bisher versucht hast, und was nicht wie gewünscht funktioniert hat. Es ist immer sehr arbeitsintensiv ein Beispiel-Code zu erfinden, wenn das Problem nur grob geschildert wird. Dementsrpechend selten sind dann auch hilfreiche Antworten.
Gruß, Jan
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 30.03.2013, 21:46
Titel:
|
 |
Bisheriger Versuch war halt folgendes code, wobei dieser Ansatz auch von euch der runde kam
|
|
|
Andy386 |

Forum-Guru
|
 |
Beiträge: 485
|
 |
|
 |
Anmeldedatum: 24.06.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 7.1/8
|
 |
|
|
 |
|
Verfasst am: 31.03.2013, 04:08
Titel:
|
 |
es wäre DURCHAUS hilfreich wenn du mal etwas mehr schreiben würdest.
* was hast du
* was geht nicht
* was wünscht du dir
und nicht in jedem Post extra und dann noch zu drei (3!) völlig verschiedenen Themen, sondern erstmal zu einem.
_________________
Ich hasse es wenn die Leute Fragen stellen, man dann versucht sich Mühe zu geben, und diejenigen ihren Thread nie wieder besuchen...
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.04.2013, 13:24
Titel:
|
 |
Eine Frage noch zu dem Post hier, wenn ich das unten stehende code verwende, wird mir nur der ausgangspunkt mit false versehen, jedoch sollte auch der nächste wert auch false angegeben werden.
beispiel:
1 2 3 4 10 daraus wird doch
1 1 1 false 1
|
|
|
|
Gehe zu Seite 1, 2 Weiter
|
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.
|
|