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

Zerschneiden und Zusammenfügen von Vektoren

 

Chrisch
Forum-Anfänger

Forum-Anfänger


Beiträge: 46
Anmeldedatum: 09.06.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.07.2008, 17:37     Titel: Zerschneiden und Zusammenfügen von Vektoren
  Antworten mit Zitat      
So nun habe ich noch den halben Tag hieran verbracht :

Ich habe einen beliebig langen Vektor, den möchte ich "rekombinieren", sprich mit einer beliebig gewählten Trennstelle zerschneiden.
Dann soll praktisch ein bestimmer Teil des Vektors vor und hinter der Trennstelle den Platz tauschen. Es geht dabei um Kreuzung/Rekombination Bio halt ..


Hier meine Idee. Sie funktioniert.


Code:


         l=length(k);    %Länge meines Code-Vektors
         
         Trennstelle= 1 + floor(l/2*rand([1,1]))       %zufällige Trennstelle              
         
           R1{z}=zeros(N,N);                    
           R2{z}=zeros(N,N);
           
           Teil1{z}        =k(:,1:l/2);                               %1. Teil
           Teil2{z}        =k(:,l/2+1:l);                             %2. Teil
         
          %die zu vertauschenden Bereiche
           Trenn1{z}    =Teil1{z}(:,[1:Trennstelle]);            
           Trenn2{z}    =Teil2{z}(:,[1:Trennstelle]);
         
           
          %Der Austausch
          Teil1{z}(1,1:Trennstelle)=[Trenn2{z}];
          Teil2{z}(1,1:Trennstelle)=[Trenn1{z}];
         
          %damit wird aus dem Vektor eine N*N Matrix...
                       
          for w=1:N
          t1{z}=Teil1{z}(w)+w*N-N;
          t2{z}=Teil2{z}(w)+w*N-N;
          R1{z}(t1{z})=1;
          R2{z}(t2{z})=1;
          R1{z};
          R2{z};
          end



 


Geht dieses Rekombinieren (oder auch "kreuzen") auch einfacher ?

Und mein erstes Element in R1 und R2 ist immer komplett leer. also nichtmal Null sondern leer Evil or Very Mad wieso ??
Cells muss ich leider verwenden, glaub ich. Mein Datensatz besteht aus hunderten Matrizen und Vektoren die ständigen Änderungen und Zugriffen unterworfen sind.

Und was ist cellfun ? Kann ich damit Cells in Matrizen umwandeln ?
Ich gebs zu, war grad etwas zu faul in der Hilfe zu stöbern, aber bin müde mittlerweile.
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden


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 - 2024 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.