Ich habe einen Datenrahmen (df1) wie diesen.
f1 f2 f3 f4 f5
d1 1 0 1 1 1
d2 1 0 0 1 0
d3 0 0 0 1 1
d4 0 1 0 0 1
Die Spalte d1 ... d4 ist der Rowname, die Zeile f1 ... f5 ist der Spaltenname.
Um Beispiel (df1) zu machen, erhalte ich einen neuen Datenrahmen mit der Anzahl 1, der mit df1 identisch ist. Die Anzahl 1 bleibt also für den gesamten Datenrahmen erhalten, jedoch nicht für jede Zeile oder Spalte.
Ist es möglich, die Randomisierung zeilenweise oder spaltenweise durchzuführen?
Ich möchte die df1 spaltenweise für jede Spalte randomisieren, dh die Zahl 1 in jeder Spalte bleibt gleich. und jede Spalte muss mindestens einmal geändert werden. Zum Beispiel kann ich eine zufällige df2 wie diese haben: (Es wurde festgestellt, dass die Anzahl von 1 in jeder Spalte gleich bleibt, aber die Anzahl von 1 in jeder Zeile unterschiedlich ist.
f1 f2 f3 f4 f5
d1 1 0 0 0 1
d2 0 1 0 1 1
d3 1 0 0 1 1
d4 0 0 1 1 0
Ebenso möchte ich auch die df1 zeilenweise für jede Zeile randomisieren, dh die Nr. von 1 in jeder Zeile bleibt gleich und jede Zeile muss geändert werden (aber die Anzahl der geänderten Einträge kann unterschiedlich sein). Zum Beispiel könnte ein randomisierter df3 ungefähr so aussehen:
f1 f2 f3 f4 f5
d1 0 1 1 1 1 <- two entries are different
d2 0 0 1 0 1 <- four entries are different
d3 1 0 0 0 1 <- two entries are different
d4 0 0 1 0 1 <- two entries are different
PS. Vielen Dank für die Hilfe von Gavin Simpson, Joris Meys und Chase für die vorherigen Antworten auf meine vorherige Frage zur Randomisierung von zwei Spalten.