R随机选择行,直到满足变化的总和

问题描述 投票:0回答:1

我有兴趣比较不同大小补丁之间的一些值,但希望随机选择小补丁,直到它们的面积等于随机选择的大补丁的面积。然后,我将比较这种小补丁和单个大补丁之间物种的唯一计数。

例如

>df
ID     Type        Area        Species1     Species2
1      Big          50            1            1
2      Big          100           1            0
3      Small        25            0            1
4      Small        50            1            1
5      Small        25            1            1

然后,我想随机选择小块,直到它们的面积总和等于随机选择的大块。然后,我想比较此选择与随机选择的大小相等的大斑块之间物种的独特数量。例如

如果选择了补丁1,并且随机选择器可以选择补丁4或3 + 5。然后将在“唯一计数补丁1 = 2”,“唯一计数补丁4 = 2”或“唯一计数3 + 5 = 2”之间进行比较。

我希望这是有道理的。如有任何疑问,我很乐意答复/更新。谢谢您的帮助。

我有兴趣比较不同大小补丁之间的一些值,但希望随机选择小补丁,直到它们的面积等于随机选择的大补丁的面积。然后,我会...

r select random sum sample
1个回答
0
投票
Bigs<-rbinom(3,100,rbeta(10,1,1));
Smalls<-rbinom(1000,20,rbeta(1000,1,1));

lapply(Bigs,function(big){samplesmalls<-c();
                            x=big;
                            while(x>0&x>min(Smalls)){
                              drawsmall<-sample(Smalls[Smalls<=x],1)
                              samplesmalls<-c(samplesmalls,drawsmall)
                              x<-x-drawsmall}
                            samplesmalls
                            })
© www.soinside.com 2019 - 2024. All rights reserved.