以指定的样本大小和概率生成R中的随机样本数据

以指定的样本大小和概率生成R中的随机样本数据,r,random,probability,R,Random,Probability,我想用R来写一个模型,它将回答一个关于概率的一般性问题。下面是一般性问题,然后是关于如何使用R代码回答的具体问题。如果你知道一般问题的答案(与R代码分开),并且可以用简单的英语解释基本的统计原理,我也对这个问题感兴趣 问题:如果我拆分一组n个对象,首先通过4路拆分器,然后通过7路拆分器(总共产生28个不同的组),并且每个拆分器产生随机分布(即对象被大致等分),拆分顺序是否会影响最后28组的方差。如果我分成4个,然后分成7个,这和分成7个,然后分成4个不同吗?如果一个拆分器的方差大于另一个拆分器,

我想用R来写一个模型,它将回答一个关于概率的一般性问题。下面是一般性问题,然后是关于如何使用R代码回答的具体问题。如果你知道一般问题的答案(与R代码分开),并且可以用简单的英语解释基本的统计原理,我也对这个问题感兴趣

问题:如果我拆分一组n个对象,首先通过4路拆分器,然后通过7路拆分器(总共产生28个不同的组),并且每个拆分器产生随机分布(即对象被大致等分),拆分顺序是否会影响最后28组的方差。如果我分成4个,然后分成7个,这和分成7个,然后分成4个不同吗?如果一个拆分器的方差大于另一个拆分器,答案是否会改变

具体的R问题:我如何编写一个模型来回答这个问题?到目前为止,我已经尝试使用
sample
rnorm
生成样本数据。模拟4路拆分器的外观如下所示:

> table(sample(1:4, size=100000, replace=TRUE))

    1     2     3     4 
25222 24790 25047 24941
Split4way <- as.vector(table(sample(1:4, size=100000, replace=TRUE)))
as.vector(table(sample(1:7, size=Split4Way, replace=TRUE)))
sample(1:4,大小=100000,替换=TRUE)

这基本上就像滚动一个4面模具100000次,并记录每个数量的实例数。我可以使用
table
函数对实例求和,这会给我如下输出:

> table(sample(1:4, size=100000, replace=TRUE))

    1     2     3     4 
25222 24790 25047 24941
Split4way <- as.vector(table(sample(1:4, size=100000, replace=TRUE)))
as.vector(table(sample(1:7, size=Split4Way, replace=TRUE)))
现在,我想获取这些输出中的每一个,并将它们用作7路分割的输入。 我尝试将4路分割保存为变量,然后将该向量插入
size=
变量,如下所示:

> table(sample(1:4, size=100000, replace=TRUE))

    1     2     3     4 
25222 24790 25047 24941
Split4way <- as.vector(table(sample(1:4, size=100000, replace=TRUE)))
as.vector(table(sample(1:7, size=Split4Way, replace=TRUE)))
那么,我如何生成一个表或列表来显示4路分割的所有输出,然后是7路分割,总共28个分割


是否有一个功能允许我自定义每个拆分设备的标准偏差?例如,我是否可以规定4路拆分器的输出具有x%的标准偏差,7路拆分器的输出具有x%的标准偏差?

我们可以通过编写一个函数来说明您的设置,该函数将模拟传递到拆分器中的
n
对象

假设对象首先到达4拆分器。让我们随机给它分配一个从1到4的数字,以确定它的拆分方式。接下来是七分路器;我们还可以随机给它分配一个从1到7的数字,以确定它最终将进入哪个箱子

设置如下所示:

> table(sample(1:4, size=100000, replace=TRUE))

    1     2     3     4 
25222 24790 25047 24941
Split4way <- as.vector(table(sample(1:4, size=100000, replace=TRUE)))
as.vector(table(sample(1:7, size=Split4Way, replace=TRUE)))
最终垃圾箱
1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
1  2  3  4  5  6  7  1  2  3  4  5  6  7  1  2  3  4  5  6  7  1  2  3  4  5  6  7  
\__|__|__|__|__|_/   \__|__|__|__|__|_/   \__|__|__|__|__|_/   \__|__|__|__|__|_/  
|                    |                    |                    |
七分离器七分离器七分离器七分离器七分离器
|                    |                    |                    |
1                    2                    3                    4
\___________________|____________________|___________________/
|
四分路器
|
输入
我们可以看到,任何一对唯一的数字都会导致该对象最终位于不同的箱子中

对于第二个设置,我们颠倒顺序,使七个拆分器排在第一位,但除此之外,每个对象仍然基于一对唯一的数字获得一个唯一的箱子:

1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
1  2  3  4  1  2  3  4  1  2  3  4  1  2  3  4  1  2  3  4  1  2  3  4  1  2  3  4   
\__|__|__/  \__|__|__/  \__|__|__/  \__|__|__/  \__|__|__/  \__|__|__/  \__|__|__/  
     |           |           |           |           |           |           |
4 splitter  4 splitter  4 splitter  4 splitter  4 splitter  4 splitter  4 splitter 
     |           |           |           |           |           |           |
     1           2           3           4           5           6           7
      \__________|___________|___________|___________|___________|__________/
                                         |
                                     7 splitter
                                         |
                                       input
请注意,我们可以先随机抽取1:4,然后随机抽取1:7,反之亦然,但在任何一种情况下,唯一对都将确定唯一的箱子。对象最终进入的实际箱子将根据应用这两个数字的顺序而变化,但这不会改变每个箱子将获得传入对象的1/28的事实,并且差异将保持不变

这意味着要模拟和比较这两种设置,我们只需要对传入的每个对象从1:4和1:7进行采样,然后以不同的顺序应用这两个数字来计算最终的箱子:


simulate我们可以通过编写一个函数来说明您的设置,该函数将模拟传递到拆分器中的
n
对象

假设对象首先到达4拆分器。让我们随机给它分配一个从1到4的数字,以确定它的拆分方式。接下来是七分路器;我们还可以随机给它分配一个从1到7的数字,以确定它最终将进入哪个箱子

设置如下所示:

> table(sample(1:4, size=100000, replace=TRUE))

    1     2     3     4 
25222 24790 25047 24941
Split4way <- as.vector(table(sample(1:4, size=100000, replace=TRUE)))
as.vector(table(sample(1:7, size=Split4Way, replace=TRUE)))
最终垃圾箱
1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
1  2  3  4  5  6  7  1  2  3  4  5  6  7  1  2  3  4  5  6  7  1  2  3  4  5  6  7  
\__|__|__|__|__|_/   \__|__|__|__|__|_/   \__|__|__|__|__|_/   \__|__|__|__|__|_/  
|                    |                    |                    |
七分离器七分离器七分离器七分离器七分离器
|                    |                    |                    |
1                    2                    3                    4
\___________________|____________________|___________________/
|
四分路器
|
输入
我们可以看到,任何一对唯一的数字都会导致该对象最终位于不同的箱子中

对于第二个设置,我们颠倒顺序,使七个拆分器排在第一位,但是