Angenommen, ich habe zwei Datenrahmen, Schüler und Lehrer.Generieren Sie alle möglichen Kombinationen von Zeilen in R?
students <- data.frame(name = c("John", "Mary", "Sue", "Mark", "Gordy", "Joey", "Marge", "Sheev", "Lisa"),
height = c(111, 93, 99, 107, 100, 123, 104, 80, 95),
smart = c("no", "no", "yes", "no", "yes", "yes", "no", "yes", "no"))
teachers <- data.frame(name = c("Ben", "Craig", "Mindy"),
height = c(130, 101, 105),
smart = c("yes", "yes", "yes"))
Ich möchte alle möglichen Kombinationen von Schülern und Lehrern erzeugen und die begleitenden Informationen zu halten, erstellen Sie grundsätzlich alle Kombinationen von Zeilen aus Datenrahmen „Studenten“ und „Lehrer“. Dies kann leicht mit einer Schleife und Cbind getan werden, aber für einen massiven Datenrahmen dauert dies ewig. Helfen Sie einem R-Neuling - was ist der schnellste Weg, dies zu tun?
Edit: Ist dies nicht klar ist, möchte ich die Ausgabe folgendes Format haben:
rbind(
cbind(students[1, ], teachers[1, ]),
cbind(students[1, ], teachers[2, ])
...
cbind(students[n, ], teachers[n, ]))
Side Anmerkung: die 'logical' Klasse ist für' zu bejahen ist/'no' Werte. Siehe '' logisch'. – Frank
Nützliches Feature, aber für meinen aktuellen Zweck möchte ich alles in einem einzigen Objekt behalten –
Oder verwenden Sie 'CJ' aus' data.table' – akrun