R 如何根据分类变量将观察结果随机分为两组(治疗组和安慰剂组)>;2级?
我有一个带有参与者id和性别的数据集。我想在可用的数据集中,将治疗和安慰剂分别随机分配给男性和女性参与者(治疗组和安慰剂组各50%)R 如何根据分类变量将观察结果随机分为两组(治疗组和安慰剂组)>;2级?,r,R,我有一个带有参与者id和性别的数据集。我想在可用的数据集中,将治疗和安慰剂分别随机分配给男性和女性参与者(治疗组和安慰剂组各50%) dataset<-data.frame("participant ID"=c(1:10), "Gender"=c("M", "F", "M", "F","M", "F","M",
dataset<-data.frame("participant ID"=c(1:10), "Gender"=c("M", "F", "M", "F","M", "F","M", "F","M", "F"))
dataset您可以这样做。由于每个性别组有5个OB,2个接受治疗,3个安慰剂,但如果需要,可以产生不同的结果
dataset %>%
group_by(Gender) %>%
mutate(rand = runif(n(), 0,1),
treatment = case_when(rank(rand) < .5*n() ~ 1,
TRUE ~ 0))
# # A tibble: 10 x 4
# # Groups: Gender [2]
# participant.ID Gender rand treatment
# <int> <chr> <dbl> <dbl>
# 1 1 M 0.219 1
# 2 2 F 0.232 0
# 3 3 M 0.811 0
# 4 4 F 0.317 0
# 5 5 M 0.526 1
# 6 6 F 0.303 0
# 7 7 M 0.915 0
# 8 8 F 0.159 1
# 9 9 M 0.831 0
# 10 10 F 0.0400 1
数据集%>%
按性别划分的组别%>%
变异(rand=runif(n(),0,1),
治疗=病例(等级)<.5*n()~1时,
真的(0)
##tibble:10 x 4
##群体:性别[2]
#参与者ID性别和治疗
#
#1米0.219 1
#2 F 0.232 0
#3米0.8110
#4 F 0.317 0
#5米0.526 1
#6 F 0.303 0
#7米0.915 0
#8 F 0.159 1
#9米0.8310
#10 F 0.0400 1
你文章的标题表明所涉及的一个变量(可能是上例中的gender
变量)将有两个以上的值。这在该设置中也应该起作用