Die Antworten hier weisen zu Recht auf Sie hin sample. Vielleicht möchten Sie die Warnungen hier auf einige Gefahren überprüfen, die mit der Verwendung der Probe unverändert einhergehen.
Dason
@Dason: Das tl; dr ist so lange, wie die Vektorlänge garantiert> 1 ist, es funktioniert.
smci
1
@smci Das tl; Dr ist, dass es gefährlich ist, weil man sich damit vertraut macht und wenn es dann endlich die Länge 1 hat, beißt es dich.
Dason
@Dason Ich hatte das gelesen, aber noch niemand wurde modifiziert base::sample, um die Verwendung von zu erzwingen seq_along. Auch ich sehe sowieso nicht wo sample/sample.intanrufen base::seq()?
smci
Antworten:
123
Ja.
sample(V)
Von ?sample:
Für 'sample' ist die Standardeinstellung für 'size' die Anzahl der Elemente, die aus dem ersten Argument abgeleitet wurden, sodass 'sample (x)' eine zufällige Permutation der Elemente von 'x' (oder '1: x') generiert.
Wie kann ich [1,1, 2, 2, 2, 2, 3, 3, 4, 5, 5, 5] so mischen, dass ich so etwas bekomme: [5, 5, 3, 3, 3, 3, 3, 1, 1, 2, 4, 4, 4]? so dass jedes Element zufällig zu einem anderen wechseln könnte, aber die Anzahl der einzelnen Elemente konstant bleibt?
Rotail
2
@ Rotail: das macht schon was du willst; das sizeArgument der sampleStandardeinstellungen ist size <- length(x). ( sample
Geben Sie ein
Jep! Vielen Dank!
Rotail
24
Verwenden Sie sampleFunktion
V<-rep(1:10, each=150)
set.seed(001) # just to make it reproducible
sample(V)
sample
. Vielleicht möchten Sie die Warnungen hier auf einige Gefahren überprüfen, die mit der Verwendung der Probe unverändert einhergehen.base::sample
, um die Verwendung von zu erzwingenseq_along
. Auch ich sehe sowieso nicht wosample/sample.int
anrufenbase::seq()
?Antworten:
Ja.
Von
?sample
:quelle
size
Argument dersample
Standardeinstellungen istsize <- length(x)
. (sample
Verwenden Sie
sample
FunktionV<-rep(1:10, each=150) set.seed(001) # just to make it reproducible sample(V)
quelle
replace=FALSE
ist der Standardwert.