【问题标题】:Randomization of treatments in R studioR studio中的治疗随机化
【发布时间】:2016-09-09 00:29:58
【问题描述】:

我想获得三个水平和样本大小 n = 15 的随机化治疗。我被困在哪里

志愿者

我想要三个不同的组,每个组五个,但我是 R 新手。

这是 ANOVA 的数据设置,而不是提供特定数据集的特定问题。我也不知道 set.seed 是什么意思

【问题讨论】:

    标签: random statistics rstudio anova


    【解决方案1】:

    我认为您正在寻找类似的东西:

    set.seed(1337)
    # replace with you real participants ids
    volunteers <- 1:15
    # set the number of groups
    number.of.groups <- 1:3
    # set group size
    group.size <- 5
    # generate data frame with participant > group order
    df <- data.frame(group=sort(rep(number.of.groups,group.size)),
                     participant=sample(volunteers,length(volunteers)))
    
    # show your groups
    df[which(df$group==1),]
    # group participant
    # 1     1           9
    # 2     1           8
    # 3     1           1
    # 4     1           6
    # 5     1           5
    df[which(df$group==2),]
    # group participant
    # 6      2           4
    # 7      2          15
    # 8      2           3
    # 9      2           2
    # 10     2          13
    df[which(df$group==3),]
    # group participant
    # 11     3          11
    # 12     3          10
    # 13     3          14
    # 14     3          12
    # 15     3           7
    

    如果你想复制你的样本,你只需要使用 set.seed() ,因为这种方法会导致你总是抽取相同的“随机”样本。因此,set.seed() 更多的是用于测试而不是实际分析代码。顺便说一句,您设置的种子无关紧要。如果您想复制,请确保始终设置相同的种子。

    【讨论】:

    • @yoon 如果此答案有帮助,请考虑通过单击复选标记将其选为答案。这让社区知道答案有效并且问题已关闭。
    【解决方案2】:

    怎么样:

    install.packages("randomizr")
    library(randomizr)
    Z <- complete_ra(15, num_arms = 3)
    table(Z)
    

    这给了

    > table(Z)
    Z
    T1 T2 T3 
     5  5  5 
    

    【讨论】:

      猜你喜欢
      • 2013-04-24
      • 2021-05-14
      • 1970-01-01
      • 2020-09-18
      • 2020-08-19
      • 2022-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多