|
|
|
>> Folgeglieder eines Vektors "mitteln" ... |
|
| stoxxii |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 16.07.2012, 08:23
Titel: >> Folgeglieder eines Vektors "mitteln" ...
|
 |
Hallo User-Gemeinde,
Hi Folks,
ich habe einen Vektor :
y = [24 27 31 35 32 28 25 20];
und da versuchte ich ein Mittelwerte zw.
jeweils 2 benachbarten Folge-Gliedern , Elementen
zu berechnen ...
Leider kann ich nix in meinem bisherigen Archiv finden,
womit ich jewweils 2 Folge-Glieder operativ auswerten kann ...
sei Mean , Diff.... oder etwas anderes ...
Könntet ihr mir ein Programmier-Tip geben ...???
Eventuell ohne For-Loop ... ???
Vielen Dank für eure Zeit & Müh ...vorab ...
Beste Grüße
stoxxii
|
|
|
|
|
|
| Harald |

Forum-Meister
|
 |
Beiträge: 24.502
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 16.07.2012, 08:26
Titel:
|
 |
Hallo,
so?
Falls das nicht das gewünschte Ergebnis ist, bitte verdeutlichen, was eigentlich berechnet werden soll.
Grüße,
Harald
|
|
|
|
| stoxxii |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 16.07.2012, 13:59
Titel: > danke ... verstehe aber das "plus" nicht
|
 |
Halloo Forum-Meister,
danke , soweit ... ich kann es erst zu hause prüfen ...
ob dein Index-Tip mir soo weiterhilft ...
Ich Habe schon andere ähnliche Indexierung gesehn ...
aber leider verstehe ich das mit dem "+" nicht , was da Matlab genau
herausliest .. also welche Elemente in welcher Richtung ...
ich melde mich später nochmal ...
schönen tag
grüße
stoxxii
|
|
|
|
| Seer |

Forum-Fortgeschrittener
|
 |
Beiträge: 53
|
 |
|
 |
Anmeldedatum: 23.04.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 7.14.0.739
|
 |
|
|
 |
|
Verfasst am: 16.07.2012, 15:05
Titel:
|
 |
Bedeutet: Betrachte den Vektor y von der Stelle 1 (dafür steht die 1 ) bis zur (dafür steht der Doppelpunkt) vorletzten Stelle (dafür steht das end-1).
Im zweiten Fall betrachtest du dann nur den Teil des Vektors, der vom zweiten bis zum letzen Element geht. Diese beiden Teilvektoren addierst du dann und teilst den Ergebnisvektor durch 2.
Als Ergebnis bekommst du einen Vektor der eine Stelle kleiner ist als y und an dessen erster Stelle der Durchschnitt der ersten beiden Stellen von y steht.
Beispiel:
Ausgabe:
ergebnis =
1.5000 2.5000 3.5000 4.5000 5.5000 6.5000 7.5000 8.5000
Bzw. wenn man deinen Vektor einsetzt:
ergebnis =
25.5000 29.0000 33.0000 33.5000 30.0000 26.5000 22.5000
|
|
|
|
| Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 16.07.2012, 15:54
Titel:
|
 |
|
eine weitere möglichkeit bietet glaub ich
da sollte auch ein beispiel stehn zum thema gleitender mittelwert.
|
|
|
|
| stoxxii |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 16.07.2012, 18:17
Titel: >> habs gefunden ... Forum-meister... danke
|
 |
Halloo Forum-Meister,
danke für den Tip ... es war nicht ganz sooo richtig ... aber es hat mir die Richtung gegeben ... also helpful
Ich suchte den Mittelwert benachbarter Elemente ... "gemittelt" sagte ich oben ...
unzwar sooo:
yMi = mean ([y(2:end) ; y(1:end-1)]) ... cool ...
Aber trotzdem nochmal Danke für eure Mühe und Anreggn.
beste grüße
stoxxii
|
|
|
|
| Harald |

Forum-Meister
|
 |
Beiträge: 24.502
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 16.07.2012, 18:29
Titel:
|
 |
Hallo stoxxii,
wenn du mir jetzt noch sagst, inwiefern sich die Resultate bei deinem Code von dem von uns vorgeschlagenen Code unterscheiden? Im Ergebnis zumindest bei deinem Testvektor meines Erachtens gar nicht.
Grüße,
Harald
|
|
|
|
| Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 16.07.2012, 21:58
Titel: Re: >> habs gefunden ... Forum-meister... danke
|
 |
Hallo stoxxii,
MEAN berechnet die Summe und teilt durch die Anzahl der Summanden. Deshalb ist:
eyxakt das gleiche wie:
Allerdings ist das obere deutlich effizienter, weil nicht erst ein temporäres Array erstellt werden muss.
Ich kann Harald und Seer also nur bestätigen.
Gruß, Jan
|
|
|
|
| stoxxii |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 17.07.2012, 12:54
Titel: >> keine Panik ... benötige noch Ergänzung
|
 |
Halloo Ihr Zwei Harald & Seer ,
ich nicht haben Ahnung von Mathematik ... sorry ...
aber ich bemühe mich, wie in der TV Werbung von der V & R-Bank ...
jeden Tag ein bißchen besser machen ...
Vielleicht hatte ich euere Programm-Zeile um eine Klammer falsch eingegeben .. oder soo ...
Jetzt wollte ich euch noch bitten ...
mir diese neu berechneten Mittelwerte zw. die Neighbors einzusetzen ...
also die ursprüngliche Vektor-Reihe durch diese neuen Elemente zu
erweitern ... irgendwie soo :
...
Könnt ihr mir weiterhelfen ???
Danke vorab für's Mühen....
beste grüße
stoxxii
|
|
|
|
| Seer |

Forum-Fortgeschrittener
|
 |
Beiträge: 53
|
 |
|
 |
Anmeldedatum: 23.04.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 7.14.0.739
|
 |
|
|
 |
|
Verfasst am: 17.07.2012, 13:37
Titel:
|
 |
Probiers mal damit:
Ausgabe im Command Window:
vektor1 =
1 3 5 7 9 11
vektor2 =
2 4 6 8 10
ergebnis =
0 0 0 0 0 0 0 0 0 0 0
ergebnis =
1 0 3 0 5 0 7 0 9 0 11
ergebnis =
1 2 3 4 5 6 7 8 9 10 11
Bei Bedarf kann ich dir auch noch erklären was du damit genau tust .
|
|
|
|
| Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 17.07.2012, 13:55
Titel:
|
 |
Hallo Seer,
Oder:
Gruß, Jan
|
|
|
|
| stoxxii |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 17.07.2012, 14:07
Titel: >> danke .. habe noch etwas gefunden
|
 |
halloo Guys,
danke soweit ... ich habe zwischenzeitlich noch etwas auf "stackoverflow" gefunden :
naja, immer in englisch die treffenden Fragen zu forumulieren unter google.de ist nichts soo einfach ...
beste grüße
uwe koernig
|
|
|
|
| Seer |

Forum-Fortgeschrittener
|
 |
Beiträge: 53
|
 |
|
 |
Anmeldedatum: 23.04.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 7.14.0.739
|
 |
|
|
 |
|
Verfasst am: 17.07.2012, 14:27
Titel: Re: >> danke .. habe noch etwas gefunden
|
 |
| stoxxii hat Folgendes geschrieben: |
|
Damit machst du im Prinzip genau das was ich vorgeschlagen hab, nur mit expliziten Werten statt Variablen. Du bekommst außerdem einen Spaltenvektor statt einem Zeilenvektor zurück.
Jans Version ist schöner und läuft vermutlich schneller, allerdings habe ich fünf Minuten gebraucht bis ich verstanden habe wie sie funktioniert. "Reshape" ist mir bisher noch nicht über den Weg gelaufen gewesen.
|
|
|
|
|
|
|
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.
|
|