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

Index einer Variablen erhöhen

 

BliZZ2k3
Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 30.11.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.11.2010, 17:30     Titel: Index einer Variablen erhöhen
  Antworten mit Zitat      
Hallo zusammen,
ich verzweifel und hoffe auf eure Hilfe. Zunächst einmal der Code:
Code:
 
    [Zeilen,Spalten]= size(measurementData.S_CAN.S_OBJECTS.ID);
    gefunden_ges = 0;
   
    for sp = 1:Spalten
   
        gefunden = find(measurementData.S_CAN.S_OBJECTS.ID(:,sp)== 23);
               
        for z = 1:length(gefunden)
            ID23(gefunden(z),2) = measurementData.S_CAN.S_OBJECTS.ObjClass(gefunden(z),Spalten);
        end
    end
   

    for Spalten = 1:Spalten
   
        gefunden = find(measurementData.S_CAN.S_OBJECTS.ID(:,Spalten)==23);
        for z = 1:length(gefunden)
        ID23(gefunden(z),3) = measurementData.S_CAN.S_OBJECTS.Distance__m_(gefunden(z),Spalten);
        end
    end
   

    for Spalten = 1:Spalten
   
        gefunden = find(measurementData.S_CAN.S_OBJECTS.ID(:,Spalten)==23);
        for z = 1:length(gefunden)
        ID23(gefunden(z),4) = measurementData.S_CAN.S_OBJECTS.PositionX__m_(gefunden(z),Spalten);
        end
    end

    for Spalten = 1:Spalten
   
        gefunden = find(measurementData.S_CAN.S_OBJECTS.ID(:,Spalten)==23);
        for z = 1:length(gefunden)
        ID23(gefunden(z),5) = measurementData.S_CAN.S_OBJECTS.PositionY__m_(gefunden(z),Spalten);
        end
    end

    for Spalten = 1:Spalten
   
        gefunden = find(measurementData.S_CAN.S_OBJECTS.ID(:,Spalten)==23);
        for z = 1:length(gefunden)
        ID23(gefunden(z),6) = measurementData.S_CAN.S_OBJECTS.VelocityX__m_s_(gefunden(z),Spalten);
        end
    end

    for Spalten = 1:Spalten
   
        gefunden = find(measurementData.S_CAN.S_OBJECTS.ID(:,Spalten)==23);
        for z = 1:length(gefunden)
        ID23(gefunden(z),7) = measurementData.S_CAN.S_OBJECTS.VelocityY__m_s_(gefunden(z),Spalten);
        end
    end


Soweit erst einmal. Das funktioniert super (in diesem Fall für ID 23). Jetzt gibt es aber insgesamt 40 ID's die ich auf diese Weise sortieren möchte.
Gibt es eine Möglichkeit den Namen "ID1...40" in einer Schleife zu erhöhen?

Viele Grüße
BliZZ
Private Nachricht senden Benutzer-Profile anzeigen


Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.11.2010, 18:20     Titel:
  Antworten mit Zitat      
Die 23 mit i_ID ersetzen

dann
Code:

for i_ID = 1:40
...
end
 


dabei ist "..." dein jetziger Code mit der 23 durch i_ID ersetzt.
 
BliZZ2k3
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 30.11.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.11.2010, 18:23     Titel:
  Antworten mit Zitat      
Das ist ja kein Problem die Zahl durch eine Variable zu ersetzen, aber wie kann ich den Variablennamen ID23 bzw. die 23 hochzählen und als Variablenname nutzen?
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 17.11.2010, 19:11     Titel:
  Antworten mit Zitat      
Hallo BliZZ2k3,
Zitat:
Das ist ja kein Problem die Zahl durch eine Variable zu ersetzen, aber wie kann ich den Variablennamen ID23 bzw. die 23 hochzählen und als Variablenname nutzen?

Am allerbesten: gar nicht!
Benutze stattdessen besser ID{1}, ID{2}, ... ID{23}.
Einen Index in den Namen der Variablen zu packen ist nicht sinnvoll. Denn wie Du ja gerade merkst ist es unnötig kompliziert, wenn man später wieder darauf zugreifen möchte.

Gruß, Jan
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.