【发布时间】:2017-06-17 13:58:29
【问题描述】:
我重复了一个实验(rep1 和 rep2)。对于每个重复,我有两列(a,sum)和两行属于一起的测试对象(组 AA,BB ...)。为了分析,我想将收集到的数据(a和sum)随机分配给rep1和rep2。 为此,我试图随机选择组并交换 rep1 和 rep2 的“a”和“sum”。我正在尝试重复随机交换 100 次,创建 100 个数据集进行分析。
我遇到unique(df$groups)指定每个组的数据属于一起。结合sample(unique(df$group), 2),它随机抽样,比如说2组。但我不知道如何交换这些选定组的复制数据。
以下是数据示例:
group = c("A", "A", "B", "B", "C", "C")
rep1_a = c(2, 8, 5, 5, 4, 6)
rep1_sum = c(10, 10, 10, 10, 10, 10)
rep2_a = c(3, 8, 4, 5, 5, 6)
rep2_sum = c(11, 11, 9, 9, 11, 11)
df = data.frame(group, rep1_a, rep1_sum, rep2_a, rep2_sum)
# group rep1_a rep1_sum rep2_a rep2_sum
1 A 2 10 3 11
2 A 8 10 8 11
3 B 5 10 4 9
4 B 5 10 5 9
5 C 4 10 5 11
6 C 6 10 6 11
如果在这 3 个组中,A 组的副本被交换,它应该是这样的:
group rep1_a rep1_sum rep2_a rep2_sum
1 A 3 11 2 10
2 A 8 11 8 10
3 B 5 10 4 9
4 B 5 10 5 9
5 C 4 10 5 11
6 C 6 10 6 11
【问题讨论】: