Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 如何正确地将这些特定数据随机化?_R_Random_Blocking - Fatal编程技术网

R 如何正确地将这些特定数据随机化?

R 如何正确地将这些特定数据随机化?,r,random,blocking,R,Random,Blocking,我想随机测试和他们的版本顺序。 我的数据最终应该是这样的: 我发现了一些对我有一定帮助的东西: seed <- 42 blocksize <- 6 N <- 250 x 6 set.seed(seed) subject = rep(1:ceiling(N/blocksize), each = blocksize) a1 = data.frame(subject, rand=runif(length(subject)), envelope= 1:length(subjec

我想随机测试和他们的版本顺序。 我的数据最终应该是这样的:

我发现了一些对我有一定帮助的东西:

seed <- 42 
blocksize <- 6
N <- 250 x 6

set.seed(seed)

subject = rep(1:ceiling(N/blocksize), each = blocksize)

a1 = data.frame(subject, rand=runif(length(subject)), envelope= 1:length(subject))

a2 = a1[order(a1$subject,a1$rand),]

a2$Test = rep(c("BWFT", "DPT-NI", "DPD-WN", "AUT", "PFT", "AWT"),times = length(subject)/6)

assign = a2[order(a2$envelope),]

head(assign,12)

seed您可以使用

tt <- t(replicate(nrow(a2), sample(LETTERS[1:4])))
colnames(tt) <- paste0("t", 1:4)

tt帮你做剩下的事情到底是什么?我不清楚想要的结果是什么,或者你到底在哪里被卡住了。但是我不知道如何使用版本A、B、C、D按随机顺序处理t1-t4列。
(versions <- replicate(10, sample(c("A","B","C","D"), 4, replace=F)))
tt <- t(replicate(nrow(a2), sample(LETTERS[1:4])))
colnames(tt) <- paste0("t", 1:4)
a2 <- cbind(a2, tt)
head(a2)
#   subject      rand envelope   Test t1 t2 t3 t4
# 3       1 0.2861395        3   BWFT  A  B  D  C
# 6       1 0.5190959        6 DPT-NI  C  B  A  D
# 5       1 0.6417455        5 DPD-WN  D  B  A  C
# 4       1 0.8304476        4    AUT  D  C  A  B
# 1       1 0.9148060        1    PFT  C  A  B  D
# 2       1 0.9370754        2    AWT  B  D  A  C