Saya telah menghabiskan lebih dari satu hari mencoba untuk mencapai apa yang tampaknya menjadi hal yang sangat sederhana. Saya harus membuat 300 urutan 'acak' di mana angka 1,2,3 dan 4 semuanya muncul tepat 12 kali, tetapi angka yang sama tidak pernah digunakan dua kali 'berturut-turut' / berturut-turut.
Upaya terbaik saya (saya kira) adalah:
memiliki sampel R 48 item tanpa penggantian, uji apakah ada nilai berturut-turut dengan rle, kemudian gunakan hanya urutan yang tidak mengandung nilai berturut-turut. Masalah: hampir tidak ada urutan acak yang memenuhi kriteria ini, sehingga dibutuhkan selamanya.
minta R membuat urutan tanpa nilai berturut-turut (lihat kode).
pop<-rep(1:4,12)
y=c()
while(length(y)!=48)
{
y= c(y,sample(pop,48-length(y),replace=F))
y=y[!c(FALSE, diff(y) == 0)]
}
Masalah: ini menciptakan urutan dengan angka yang berbeda dari setiap nilai. Saya kemudian mencoba menggunakan hanya sekuens tersebut dengan tepat 12 dari setiap nilai, tetapi itu hanya membawa saya kembali ke masalah 1: membutuhkan selamanya.
Pasti ada cara mudah untuk melakukan ini, kan? Setiap bantuan sangat dihargai!