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

Dynamische Generierung von for-Schleifen

 

firen89
Forum-Anfänger

Forum-Anfänger


Beiträge: 37
Anmeldedatum: 16.09.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.08.2015, 13:56     Titel: Dynamische Generierung von for-Schleifen
  Antworten mit Zitat      
Hallo,

ich habe eine Matrix mit n*n Feldern. Nun möchte ich gerne, dass für die Matrix, dessen Größe ich vorher nicht weiß, alle möglichen Kombinationen gebildet werden und in einer neuen Matrix abgespeichert werden. Das Problem ist dabei für mich nicht die Bildung aller Kombinationen (verschachtelte for-Schleifen), sondern die dynamische Generierung der passenden Anzahl an for-Schleifen, da die Daten aus einer Exceldatei stammen, in der mehrere Sheets vorhanden sind mit jeweils unterschiedlich großen Matrizen.

Kann mir jemand helfen?

Gruß,
René
Private Nachricht senden Benutzer-Profile anzeigen


Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 05.08.2015, 14:05     Titel:
  Antworten mit Zitat      
rekursives vorgehen könnte eine möglichkeit sein.
um genauer helfen zu könnnen sehe ich leider in deinem problem zu wenig durch da die beschreibung doch sehr kurz ist.
ein minimalbeispiel wäre hilfreich.
dec2bin könnte helfen oder auch perms
falls anregungen gebraucht werden kann ich den post aus meiner signatur empfehlen.
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
firen89
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 37
Anmeldedatum: 16.09.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.08.2015, 14:48     Titel:
  Antworten mit Zitat      
Also das ganze sieht etwa so aus wie im Anhang (ohne die jeweiligen Lösungen natürlich) . Im Original stehen in den Feldern Satzfragmente und es sollen alle Sätze die möglich sind von den Programm gebildet werden.
Ich hatte es erst so gemacht, dass mir eine festgelgete Anzahl an Sätzen gebildet wird, indem Zufällig einzelne Felder aus verschiedenen Spalten miteinander kombiniert werden und anschließend überprüft wird, ob dieser Satz so schonmal vorher gebildet wurde, aber das dauert ewigkeiten, wenn ich wirklich alle Sätze haben möchte die theoretisch möglich sind (da ja die Auswahl per random erfolgt).

Sorry schwer zu beschreiben. Ich hoffe man kann in etwa verstehen was ich möchte Smile

mustergenerierung.xls
 Beschreibung:

Download
 Dateiname:  mustergenerierung.xls
 Dateigröße:  28 KB
 Heruntergeladen:  317 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 05.08.2015, 15:03     Titel:
  Antworten mit Zitat      
wie gesagt ich kann mir vorstellen das rekursiv zu lösen.
oder auch was mit repmat
edit:

hab 2013 schonmal was ähnliches gemacht
http://www.gomatlab.de/alle-moeglic.....hlight,kombinationen.html
das kann man an dein problem anpassen

Code:
Data{1}=1; %index der spalte 1
Data{2}=1:3; %indexe der spalte 2
Data{3}=1:2; %indexe der spalte 3
Data{4}=1; %% zusätzliche spalte in der nur ein wert steht. weil hingemuscht.
l=prod(cellfun(@numel,Data));
m=numel(Data)-1;
kombis=nan(l,m);

for k=1:numel(Data)-1;
    kombis(:,k)=repmat(sort(repmat(Data{k}(:),prod(cellfun(@numel,Data(k+1:end))),1)),l/numel(repmat(Data{k}(:),prod(cellfun(@numel,Data(k+1:end))),1)),1);
end

_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
firen89
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 37
Anmeldedatum: 16.09.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.08.2015, 16:02     Titel:
  Antworten mit Zitat      
danke, aber könntest du eventuell etwas genauer sagen, was du dir vorstellen kannst? Ich will ja nicht das du mir das fertig machst!! Nur eine grobe Struktur. Mit den einzelnen Befehlen alleine bin ich etwas überfordert...
Private Nachricht senden Benutzer-Profile anzeigen
 
firen89
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 37
Anmeldedatum: 16.09.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.08.2015, 18:08     Titel:
  Antworten mit Zitat      
ok vielen Dank!
ich versuchs mal.
Private Nachricht senden Benutzer-Profile anzeigen
 
firen89
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 37
Anmeldedatum: 16.09.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.08.2015, 14:09     Titel:
  Antworten mit Zitat      
Hallo nochmal,

das beispiel habe ich schon mal verstanden. Vielen Dank dafür! Wenn ich die Exceldatei mit den Satzteilen auslese erhalte ich ja den Inhalt (entweder mit NaN oder ohne). Nun gehe ich davon aus, dass ich den Inhalt zunächst in eine Form umwandeln muss, wie in deinem Beispiel "Daten". Ist das richtig? und wenn ja, wie muss das aussehen? Müssen alle Satzteile einer Spalte in einer Zelle stehen und welcher Datentyp muss das ein?

Ich hab leider generell schwierigkeiten mit den Datentypen Embarassed

Grüße
Private Nachricht senden Benutzer-Profile anzeigen
 
firen89
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 37
Anmeldedatum: 16.09.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.08.2015, 14:59     Titel:
  Antworten mit Zitat      
habs doch hinbekommen
Sorry fürs nerven^^

nochmal danke!
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.