|
|
Verschieben eines Elements innerhalb eines Vektors |
|
Phil_95 |
Forum-Newbie
|
|
Beiträge: 8
|
|
|
|
Anmeldedatum: 12.08.18
|
|
|
|
Wohnort: München
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 03.09.2018, 13:21
Titel: Verschieben eines Elements innerhalb eines Vektors
|
|
Hallo zusammen,
habe folgendes Problem:
Die zweite Spalte einer Variablen besteht nur aus negativen Einträgen und Nullen. Ich möchte jeden negativen Eintrag auf die Stelle der nächsten Null verschieben, hier den Betrag bilden und die ursprüngliche Stelle zu Null setzen.
Leider ist der Abstand bis zur nächsten Null immer unterschiedlich, weshalb mir eine feste Weite der Verschiebung mit der funktion circshift nichts bringt.
Vielleicht hat ja jemand eine Idee, wie man sowas umsetzen kann.
Danke im Voraus!
Liebe Grüße
Philip
_________________
Um gut zu werden, musst Du zuerst annehmen, dass Du schlecht bist.
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 03.09.2018, 14:00
Titel:
|
|
Hallo,
ein Beispiel wäre hilfreich. Mir ist noch nicht klar, was wohin verschoben werden soll.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
Phil_95 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 8
|
|
|
|
Anmeldedatum: 12.08.18
|
|
|
|
Wohnort: München
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 03.09.2018, 14:07
Titel:
|
|
Hallo Harald,
Beispiel: Folgender Spaltenvektor gegeben:
Ergebnis soll sein:
Also negativer Wert wird auf die nächste Stelle einer Null geschoben, positiv gemacht und die ursprüngliche Stelle wird zur Null.
Hoffe es ist jetzt klarer, was gemeint ist.
Viele Grüße
Philip
_________________
Um gut zu werden, musst Du zuerst annehmen, dass Du schlecht bist.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 03.09.2018, 14:31
Titel:
|
|
Hallo,
ich sehe keine andere Möglichkeit als eine
for
-Schleife mit
find
-Befehl.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
Phil_95 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 8
|
|
|
|
Anmeldedatum: 12.08.18
|
|
|
|
Wohnort: München
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 03.09.2018, 16:20
Titel:
|
|
Ich hatte einen Denkfehler, es genügt schon aus
0 0
-2 -2
0 2
-3 --> -3
-5 -5
0 3
0 5
0 0 zu machen.
Also die negativen Werte bei einer Null positiv wieder zu addieren.
Ich probier mal rum, danke!
Viele Grüße
Philip
_________________
Um gut zu werden, musst Du zuerst annehmen, dass Du schlecht bist.
|
|
|
Phil_95 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 8
|
|
|
|
Anmeldedatum: 12.08.18
|
|
|
|
Wohnort: München
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 04.09.2018, 15:48
Titel:
|
|
Hab's hinbekommen. Gibt bestimmt noch einen eleganteren Weg, jedoch reicht mir meine Lösung
Viele Grüße
Philip
_________________
Um gut zu werden, musst Du zuerst annehmen, dass Du schlecht bist.
|
|
|
|
|
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.
|
|