Mam wektor v na 150 wpisów dla każdej wartości od 1 do 10.Jak losowy wektor
V<-rep(1:10, each=150)
Chciałbym losowo reorganizować kolejność numerów w tym wektorze.
Czy można to zrobić za pomocą prostego polecenia 1-liniowego?
Mam wektor v na 150 wpisów dla każdej wartości od 1 do 10.Jak losowy wektor
V<-rep(1:10, each=150)
Chciałbym losowo reorganizować kolejność numerów w tym wektorze.
Czy można to zrobić za pomocą prostego polecenia 1-liniowego?
Tak.
sample(V)
Od ?sample
:
Dla „próbki” domyślny dla „rozmiar” jest liczba elementów wywnioskować z pierwszego argumentu, tak że „próbki (x)” generuje losowo permutacja elementów "x" (lub "1: x").
Jak mogę potasować [1,1, 2, 2, 2, 2, 3, 3, 4, 5, 5, 5] tak, że otrzymuję coś takiego: [5, 5, 3, 3, 3, 3 , 1, 1, 2, 4, 4, 4]? tak, że każdy element może losowo zmienić się na inny, ale z utrzymaniem stałej liczby każdego elementu? – Rotail
Zastosowanie sample
funkcja
V<-rep(1:10, each=150)
set.seed(001) # just to make it reproducible
sample(V)
'replace = FALSE' jest wartością domyślną. –
@BenBolker masz rację –
to sprawia, że 150 wartości z oryginału 1500 – user1723765
Odpowiedzi tutaj słusznie swoimi kierunku 'kontrole wyrywkowe. Możesz sprawdzić ostrzeżenia [tutaj] (http://stackoverflow.com/a/13732373/1003565) pod kątem pewnych niebezpieczeństw, które idą w parze z użyciem właśnie takiej próbki, jaka jest. – Dason