WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Vektor mit mehreren gleichen Werten interpolieren

 

Seb1989

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.07.2014, 22:52     Titel: Vektor mit mehreren gleichen Werten interpolieren
  Antworten mit Zitat      
Hallo ihr Matlabchecker Wink

Ich habe folgendes Problem:
Ich habe aus einer Messung einen Vektor der, aufgrund von zu schneller Messfrequenz, immer wieder mehrere gleiche Werte hat.
Heißt: ich habe zb:
Code:


a=[555,555,555,555,554,553,552,552,552 und so weiter]
und diesen sollte ich jetzt glätten da das eigentlich eine fortlaufende Kurve sein sollte und ich jetzt nur Stufen sehe.

Probiert habe ichs mit

1) ainterp=interp1(fake_x_achse,a,xneu,'spline')
wobei fake_x_achse=1/length(a) und xneu=1:0.1:length(a) ist
2) spline(fake_x_achse,a,xneu)

 




aber egal was ich mache, die Stufen bleiben.
bei meiner "xneu" die ich für die interp1 brauche hab ich als schrittweite auch schon xneu=1:1/length(a):length(a) ausprobiert jedoch hab ich dann das problem, dass mein vektor zu lang wird. (MATLAB sagt "Too many Values")

Gibt es jetzt noch eine funktion?

vielen Dank für eure Hilfe!!

achja a sind bei mir 24801 werte.... :/


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.499
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 26.07.2014, 18:56     Titel:
  Antworten mit Zitat      
Hallo,

was soll denn das Ergebnis in diesem Beispiel sein?
Wie plottest du, dass du Stufen siehst?

Für Stufen hilft Interpolation doch wenig. Sollte man da nicht eher glätten?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Epfi
Forum-Meister

Forum-Meister



Beiträge: 1.134
Anmeldedatum: 08.01.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.07.2014, 10:11     Titel:
  Antworten mit Zitat      
Sicher, dass das wirklich notwendig ist? Wenn ein und derselbe Wert zwei mal hintereinander gemessen wird, dann ist er eben zwei mal hintereinander aufgetreten. Nachträglich die Messwerte so zu malen, wie man sie gerne hätte ist eigentlich nicht so die feine Art...

Wenn Deine Abtastrate zu hoch war und Du jetzt eine kleinere haben möchtest, kannst Du Dir mal decimation und downsample angucken. Bei decimation gehen Dir wegen der (durchaus sinnvollen) eingebauten Tiefpassfilterung allerdings vielleicht Informationen verloren, da schnelle Änderungen mit kleineren Abtastraten nicht mehr abgebildet werden können. Wenn Du downsample benutzt, siehst Du hinterher vielleicht Dinge, die da gar nicht waren (-> vgl. wikipedia-artikel zu aliasing).
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.