|
|
| Clara |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 23.01.2012, 15:35
Titel: rechnen mit Vektoren
|
 |
Hallo,
ich habe folgendes Problem:
Gegeben ein Vektor beliebiger Länge. Dieser kann folgendermaßen aufgebaut sein:
A=[12
12
12
12
12
12
13
14
17
19
19
19
19
22
23]
Alle Werte sind fortlaufend (um 1 erhöht), wobei immer maximal 6 gleiche Werte untereinander stehen sollten (danach 6 Werte um 1 erhöht). Jetzt soll herausgefunden werden, welche Werte im Vektor fehlen. Im obigen Beispiel fehlen somit 5 mal 13, 5mal 14, 6 mal 15, 6 mal 16, 5 mal 17, 6 mal 18, 2 mal 19, 6 mal 20. 6 mal 21, 5 mal 22 und 5 mal 23.
Wie kann ich dies am besten realisieren?
Habe mir überlegt, dass es vielleicht sinnvoll wäre, den Vektor in eine 2xn Matrix zu überführen, wobei die zweite Spalte die Werte enthält, welche fehlen.
12 0
12 0
12 0
12 0
12 0
12 0
13 5
14 5
17 17 (6 + 6 + 5)
19 0
19 0
19 0
19 0
22 19 (2 + 6 + 6 + 5)
23 5
Vielen Dank im Voraus!
|
|
|
|
|
|
| Clara |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 23.01.2012, 17:16
Titel:
|
 |
Habe folgenden Code aus dem Beitrag "Vektoren anpassen" entsprechend versucht anzupassen, komme jedoch absolut nicht weiter.
Für einige hier wird mein Problem trivial erscheinen, jedoch für mich als Neuling stellt es derzeit ein unüberwindbares Problem dar.
Viele Grüße,
Clara
|
|
|
|
| Clara |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 23.01.2012, 17:23
Titel:
|
 |
Als Ergebnisvektor B müsste folgendes herauskommen:
A = [1 1 1 1 2 2 2 4 4 5]
B = [0 0 0 0 2 0 0 9 0 9]
|
|
|
|
| Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 23.01.2012, 17:39
Titel:
|
 |
Hallo Clara,
Siehe HISTC.
Gruß, Jan
|
|
|
|
| Clara |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 23.01.2012, 17:54
Titel:
|
 |
|
Wie kann mir bei meinem Problem die Histogrammfunktion helfen?
|
|
|
|
| samsa10 |

Forum-Fortgeschrittener
|
 |
Beiträge: 50
|
 |
|
 |
Anmeldedatum: 10.12.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 23.01.2012, 19:36
Titel:
|
 |
Hallo!
Jan hat schon alles gesagt, die von ihm vorgeschlagene Funktion ist wohl das beste hier.
Z.B.
liefert an den entsprechenden Stellen die Anzahl der fehlenden Werte.
Grüße samsa
|
|
|
|
| Clara |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.01.2012, 10:48
Titel:
|
 |
Vielen vielen Dank für Eure Hilfe.
Mit
bekomme ich den Vektor
V=[2 3 6 4 5] ausgegeben. Jetzt hab ich jedoch das Problem, dass dieser Vektor nicht die gleiche Größe hat wie A.
Frage: Wie ist es möglich die noch fehlenden "0" an der richtigen Stelle in den Vektor einzutragen, dass als Ergebnis der Vektor
B=[0 0 0 0 2 0 0 9 0 9]
herauskommt?
|
|
|
|
| samsa10 |

Forum-Fortgeschrittener
|
 |
Beiträge: 50
|
 |
|
 |
Anmeldedatum: 10.12.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.01.2012, 11:24
Titel:
|
 |
Hallo!
| Clara hat Folgendes geschrieben: |
bekomme ich den Vektor
V=[2 3 6 4 5] ausgegeben |
auf welchen Vektor A bezieht sich dieses Ergebnis?
| Clara hat Folgendes geschrieben: |
dass als Ergebnis der Vektor B=[0 0 0 0 2 0 0 9 0 9] herauskommt?
|
Was soll im Vektor B genau stehen?
Der Befehl
liefert genau das, was du in deinem ersten Post haben wolltest,- daher sehe ich noch nicht, wo das Problem liegt.
Grüße samsa
|
|
|
|
| Clara |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.01.2012, 12:35
Titel:
|
 |
Hallo,
ich beziehe mich auf den Vektor A aus dem dritten Posting.
A = [1 1 1 1 2 2 2 4 4 5]
Mit
bekomme ich den Vektor
V=[2 3 6 4 5]
ausgegeben, was absolut richtig ist. Jedoch habe ich nun das Problem, dass ich diese Beiden Vektoren aufgrund der unterschiedlichen Größe nicht vergleichen kann. Ich muss den Vektor V derart anpassen, dass folgendes dabei herauskommt.
B = [0 0 0 0 2 0 0 9 0 9]
Erklärung zu Vektor B:
A B
1 0 --> nichts fehlt
1 0 --> nichts fehlt
1 0 --> nichts fehlt
1 0 --> nichts fehlt
2 2 --> 2 mal die 1 fehlt
2 0 --> nichts fehlt
2 0 --> nichts fehlt
4 9 --> 3 mal die 2 und 6 mal die 3 fehlt (weil 3 gar nicht in A auftaucht, soll deren Fehlen bei der nächsten Zahl mit berücksichtigt werden
4 0 --> nichts fehlt
5 9 --> 4 mal die 4 fehlt und 5 mal die 5 fehlt
|
|
|
|
| samsa10 |

Forum-Fortgeschrittener
|
 |
Beiträge: 50
|
 |
|
 |
Anmeldedatum: 10.12.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.01.2012, 13:18
Titel:
|
 |
Hallo!
Inwiefern musst du die beiden Vektoren vergleichen, bzw. was soll das Endresultat sein? Diese Herangehensweise scheint mir etwas umständlich zu sein, vielleicht könnte man es besser umsetzen..
Grüße samsa
|
|
|
|
| Clara |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.01.2012, 13:51
Titel:
|
 |
Hallo,
im Prinzip können nur sieben Fälle auftreten. Wenn im Vektor V eine 0 auftaucht, schreibe in Vektor B ab dieser Stelle sechs mal die 0 hintereinander.
Wenn als nächste Zahl eine 1 im Vektor V auftaucht (somit ist klar, dass 1 Wert fehlt), zähle ab der zuvor mit 0 belegten sechsten Stelle im Vektor 5+1 Stellen hinzu und schreibe an diese die 1. Alle Stellen von der Sechsten Stelle bis zur 6+5 Stelle des Vektor B erhalten eine 0, da diese korrekt sind. usw.
Viele Grüße,
Clara
|
|
|
|
| denny |

Supporter
|
 |
Beiträge: 3.853
|
 |
|
 |
Anmeldedatum: 14.02.08
|
 |
|
 |
Wohnort: Ulm
|
 |
|
 |
Version: R2012b
|
 |
|
|
 |
|
Verfasst am: 24.01.2012, 14:24
Titel:
|
 |
Hallo
meinst du so, das funktioniert nach unteren Regel,
Oben hast du nach anderem Regel vorgeführt
|
|
|
|
| Clara |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.01.2012, 14:33
Titel:
|
 |
|
VIELEN DANK! Genau das suchte ich!!
|
|
|
|
| Clara |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.01.2012, 14:42
Titel:
|
 |
Wenn A ein Spaltenvektor wäre, inwieweit muss der obige Code angepasst werden?
Viele Grüße,
Clara
|
|
|
|
| denny |

Supporter
|
 |
Beiträge: 3.853
|
 |
|
 |
Anmeldedatum: 14.02.08
|
 |
|
 |
Wohnort: Ulm
|
 |
|
 |
Version: R2012b
|
 |
|
|
 |
|
Verfasst am: 24.01.2012, 14:55
Titel:
|
 |
so funktioniert das für beide für Zeilen und Spalten Vektoren
|
|
|
|
|
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.
|
|