Wenn nicht alle Zahlen enthalten sein werden, kann man das zweite Argument von
randperm
nutzen.
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 ;)
Das hat mir das mühsame Eintippen um einiges vereinfacht.
Ich hätte da noch eine Frage, und zwar, wie kann ich eine Matrix mit zufälligen Zahlen erzeugen, die ebenfalls nur einmal vorkommen, aber wo eine Spalte schon vordefiniert ist.
Quasi die Zahlen, die in der 2.Spalte sind, sollen berücksichtigt werden, sodass ausgehend von diesen Zahlen, die restlichen Spalten befüllt werden. D.h. Die anderen Spalten sollten weiterhin zufällig OHNE Dopplungen befüllt werden, ABER unter Berücksichtigung der Zahlen in Spalte 2.
Ganz einfach gesagt: Die Zahlen in Spalte 2 sollen in den anderen nicht erneut auftauchen.
ist wahrscheinlich machbar, aber ich verstehe das noch nicht ganz.
Ist Spalte 1 außen vor?
Eine Variante des bisherigen Ansatzes dürfte helfen, zusammen mit
setdiff
.
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 ;)
Vielen Dank, der Ansatz mit reshape und randperm hat mir geholfen.
Leider habe ich das Problem, dass ich zwei verschiedene Matrizen habe und beide sind mit zufallszahlen von 1 bis 40 befüllt.
Ich möchte dafür sorgen, dass die Spalten der 2.Matrix mit unterschiedlichen Zahlen befüllt sind im Vergleich zu der 1.Matrix.
D.h. bspw. die Matrix hat in der 1.Spalte die Zahlen 3,4,5 dann sollen diese nicht in der 1.Spalte der 2.Matrix vorkommen, sondern in den restlichen Spalten.
Ich dachte, daran, dass man mithilfe der Funktion "reshape" die Zahlen der beiden Matrizen aussortieren kann, aber das geht am Ende nicht auf, da die Zahlen mit randperm zufallsbedingt befüllt sind und je nach Zufall die Anzahl der gleichen Zahlen sich ändern, wenn ich diese Funktion auf die anderen Spalten weitere fortsetze.
auch hier ist das Problem, dass mir die Frage noch nicht klar genug ist. Speziell: was sind denn die Dimension der beiden Matrizen?
Code ist zumindest für mich deutlich leichter verständlich als wortreiche Erklärungen.
Zudem habe ich das Gefühl, dass du dich stückweise zum eigentlichen Problem hinarbeitest. Das ist ein durchaus sinnvoller Ansatz, aber für mich ist es hilfreich, das eigentliche Problem auch zu kennen.
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 ;)
So mein Ziel ist es, herauszufinden, wie ich es hinbekomme, dass die restlichen Spalten der 2.Matrix(BB_Matrix), mit den Zahlen gefüllt wird unter Berücksichtigung, dass die Zahlen der folgenden Spalten nicht gleich den Zahlen aus der 1.Matrix sind.
D.h. ich möchte nicht, dass eine Zahl, die in der 2.Spalte in der 1.Matrix vorkommt auch in der 2.Spalte in der 2.Matrix vorkommt. Aber verstehe nicht, wie ich es hinbekommen kann, dass diese Zahl/Zahlen nicht auftaucht
Wenn du in anderen Foren postest, verlinke das bitte. Ansonsten kann es sein, dass Leute sich in einem Forum noch mit einer Frage beschäftigen, die im anderen Forum bereits gelöst wurde, und das ist dann ja Zeitverschwendung.
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 ;)
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
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.