我需要为R的数据集的数据是在包含两个矩阵一个列表的形式,并执行自举具有以下属性:引导中的R数据集
两个矩阵是n由m并且只包含正整数(包括0)。
data <- list(a=matrix(,n,m), b=matrix(,n,m))
许多弹子,说10000被分配到每个矩阵,即,10000在n * m个部分被分割。换句话说,每个矩阵的所有条目的总和是固定的。
> sum(data$a) [1] 10000 > sum(data$b) [1] 10000
- 弹珠根据IJ用于弹子,即许多弹子如何结束个元素的亲和力作为基质的IJ个条目取决于与的每一个细胞相关联的概率分布矩阵。
- 与两个矩阵的元素相关的概率是不同的。
我的目标是估计导致潜在可能性的参数。我的模型假设为2n
参数,n
为每个矩阵的行数和一组。参数以复杂的方式组合,因此两个矩阵必须一起分析。
parameters <- data.frame(a=numeric(n), b=numeric(n))
现在,这是我使用的方法:
我定义一个函数
SGen
这需要输入包含所有网站相关联的概率矩阵,利用这些概率生成的数据集和返回它。SGen <- function(freq) { #generate sample ... }
对于非参数引导(这是我想要实现对现在是什么),I进行实验,并通过将所观察到的矩阵与10000计算与每个IJ元件相关联的观测概率。现在让我们称它为
freq
。所以,freq
是一个包含两个矩阵的列表。freq <- list(a=data$a/10000, b=data$b/10000)
- 接下来,我通过传递
freq
SGen
到复制100个样本数据。 - 我将所有重复项传递给另一个预定义的函数
analyze
,它给出了100 n乘以2个包含参数的矩阵。 - 接下来,我计算所有矩阵之间的条目的平均值和sd,以得到一个n乘2的矩阵包含平均值,而另一个包含sd。因此,平均矩阵的第(1,5)个元素的期望值是所有100个重复中第(1,5)个元素的平均值。
虽然这种方法的工作原理,我想在R中使用启动包作为工作。我想这样做,因为那样我就可以在启动包中使用所有的功能,以便以后进行分析,并且我还喜欢重要信息以boot类格式存储的方式。我想使用引导软件包的另一个重要原因是它提供了一种使用我的计算机的多核功能的简单方法。那么,请你指导我如何使用boot
达到我的目的?
'bootstrap'函数是为特定项目开发的。 'bootstrap'的作者推荐的boot包是我正在尝试使用的。 'bootstrap'没有并行处理功能。 [链接] https://cran.r-project.org/web/packages/bootstrap/bootstrap.pdf –
感谢您的答案。我试图做的主要问题是控制'boot'函数生成新样本的方式。从我的阅读中,我认为控制新样本绘制方式的唯一方法是将其作为参数引导。但是我的数据集变得越来越复杂,我正在研究'foreach'包,以便更直接地实现我想要做的事情。 –