问题标签 [statistics-bootstrap]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 引导样本并生成标准误差 (SE) 的函数
我有 100 个概率与我在此处创建并显示的四个唯一个体 (AAA:DDD) 相关联。
我想引导(带替换的样本)每个 AAA:DDD 的概率。对于每次迭代,我想使用 0.50 截止将概率离散化为 0 和 1,然后对向量求和。
我在下面创建了离散化和求和的函数。
我想将该函数应用于 for() 循环中每个人的概率,并使用 boot() 函数,如下所示。
虽然我认为 BiSum 函数是正确的,但它被错误地合并到for()
循环和boot()
函数中。上面的循环导致错误:
我的目标:对于每个人(AAA:DDD),我想引导 Prob,使用 0.50 作为截止值对它们进行离散化,并将得到的 0 和 1 相加。我想为每个 AAA:DDD 执行此 R=10(例如仅低,但将使用真实数据重复 R=10000)次,然后提取boot()
对象的标准误差。
关于如何改进上述循环的建议将不胜感激。特别是如何正确地将“统计”参数合并到boot()
循环中。
提前致谢。
confidence-interval - 根据引导的 95% 置信区间之间的差异计算 p 值
我已经对来自不同三组的一些数据进行了自举模型拟合,使用 2.5 和 97.5 百分位数来生成 95% 的置信区间。
我知道如果 95% 的置信区间不重叠,那么至少 p<0.05 的值之间存在显着差异。我想计算以下组之间成对比较的确切 p 值:
任何帮助将不胜感激!
r - How to randomly draw from subsets of data and bootstrap a statistic test in R
I have a dataset containing two variables and I wish to statistically test whether they are related in a bootstrap loop (i.e. using Spearman’s rank correction with cor.test(...)
).
Most of the measurements in my dataset are from independent sample units (let’s call the units plants), although some measurements come from the same plant. To deal with issues of pseudoreplication, I wish to bootstrap the statistic test a number of times, using only one measurement from each plant in each run of the test. I therefore need to write a bootstrap loop that will randomly draw one measurement for each plant, before performing the correlation test (and then repeat this process 99 times).
I wish to end up with a csv file containing the p-value, rho and S statistic for each of the 99 tests.
Example data:
So far, I have put together the below code, which begins by randomly drawing a single row for each plant represented by multiple rows, and combines these values with the rest of the data before running the stats test. However, I am now struggling to incorporate a bootstrapping function (i.e. boot()
or bootstrap()
) to run the stats test and perform the cycle multiple times:
I am sure that there is a quick and elegant way to solve the problem. Any assistance would be greatly appreciated! Many thanks.
r - R - 通过几个列标准引导
所以我有的是不同年龄的鳕鱼重量数据。随着时间的推移,这些数据是在几个位置获取的。
我想创建的是“年龄体重”,基本上是某个年龄体重的平均值。我想在每年的每个位置都这样做。但是,年龄的采样方式不同(所有捕获的老鱼都被测量,而年轻的鱼被子采样),所以我不能只创建一个正常的平均值,我想引导样本。
bootstrap 应该在一个年龄取出 5 个随机的体重值,创建一个平均值并重复 1000 次,然后创建平均值。这些值应该能够再次使用(替换)。这应该在每年的每个地区代码中针对每个年龄进行。相关因素:年份-地点-年龄。
所以这里有一个我的数据可能是什么样子的例子。
AreaCode 包含不同的位置,实际上我有 85 个不同的级别。时间序列从 1991 年到 2013 年,年龄 0-15 岁。IndWgt 包含权重。我的整个数据框的行长为 185726。
此外,并非每个地点和每年都存在每个年龄。不知道这是否会成为问题,只是脚本不是基于对某些行号的引用。权重列中有一些 NA 值,但我可以事先将它们删除。
我在想我可能应该使用replicate
, andapply
或其他plyr
功能。我试图理解这个boot
函数,但我真的不知道我是否会在 下写我的论点statistics
,在这种情况下如何写。所以,是的,基本上我不知道。
如果我能得到任何帮助,我将不胜感激!
r - 如何在 R 的引导循环中包含事后测试
相关问题的链接(如何从数据子集随机抽取并在 R 中引导统计测试)提供了一个很好的示例,说明如何对数据帧中随机抽取的数据子样本进行统计测试。作为这个问题的扩展,我想知道如何对统计测试的引导迭代执行事后测试,在该测试中发现组之间存在显着差异。
假设我在三年内(Y1、Y2、Y3)对植物进行了采样。我想知道使用 Kruskal-Wallis 检验,植物的中位长度在不同年份之间是否存在显着差异。如果他们这样做(即 p 值 <0.05),我想知道哪些年份显示出显着差异,使用 Wilcoxon 秩和检验。由于我的数据框中有一些植物在某一年内进行了多次测量,因此我将在每一年内为这些植物随机绘制一行,用于每次统计测试迭代以防止伪复制。该过程将重复 10 次。
示例数据:
我的问题是,在存在显着差异的情况下,如何在引导重复中执行事后测试(然后将每个测试统计量、p 值和参数值保存在矩阵/数据框中)。我已经尝试了下面的代码,但我得到的只是一个与迭代次数相同长度的输出矩阵,这不应该是这种情况。
在 Kruskal-Wallis 测试很重要的情况下,我希望得到一个带有 KW 测试输出的数据框行,以及事后测试的每个测试输出的一行(即具有统计值的列,一列使用 p 值和行标签指定运行了哪个事后测试:w1、w2 或 w3)。在 Kruskal-Wallis 检验不显着的情况下,我只希望返回 KW 统计数据、p 值和参数。任何建议将不胜感激!
r - R中索引矩阵的快速(er)方法
最重要的是,我正在寻找一种快速(更好)的方法来多次对矩阵进行子集/索引:
背景:
我正在实施一个涉及 R 中引导程序的顺序测试过程。想要复制一些模拟结果,我遇到了需要进行大量索引的瓶颈。为了实现块引导,我创建了一个索引矩阵,我用它对原始数据矩阵进行子集化以绘制数据的重新采样。
执行一次顺序测试过程大约需要 10 秒。在具有 2500 次复制和几个参数星座的模拟中使用它,大约需要 40 天。使用并行处理和更好的 CPU 能力可以做得更快,但仍然不是很令人愉快:/
- 有没有更好的方法来重新采样数据/摆脱循环?
- 可以在任何地方应用、矢量化、复制等吗?
- 在 C 中实现子集是否有意义(例如操作一些指针)?
尽管 R 已经完成了每一步都非常快,但它还不够快。
对于任何形式的回应/帮助/建议,我确实非常高兴!
相关问题:
-通过“[”进行快速矩阵子集化:按行、按列还是无关紧要?
-用于在 R 中以矩阵形式生成引导样本的快速函数
-随机抽样 - 矩阵
从那里
并没有真正为我做。
r - 重复重新采样功能 1000 次 ? 使用 lapply?
请我出去!我很感激任何帮助!谢谢!
我在重复重新采样 1000 次时遇到了麻烦。我尝试使用 replicate() 来做到这一点,但它不起作用。有没有其他方法可以做到这一点?谁能告诉我这是否可以通过使用 lapply 来完成?以下是我的代码:
从上面的代码中,我可以通过随机抽样数据获得 1000 个 betas0 和 1。我想这样做 1000 次以获得不同的测试版。除了replicate(),我应该怎么做?
matlab - Matlab 2013中的Bootstrap计算协方差矩阵和均值
下面是代码和错误信息。我正在尝试计算自举协方差矩阵和均值。知道为什么我的尺寸不一致吗?
问候,
r - R:使用多级模型进行引导
我希望围绕我的多级模型系数估计计算 95% 的置信区间。
对于具有单个分组变量的模型,我没有问题,但是当我添加一个额外的时,我遵循的引导方法( http://www.ats.ucla.edu/stat/r/dae/melogit.htm )基本上坏了分组变量。
我调查了 bootMer(lme4 新实现的部分),结果相同。
这是问题的一个例子:
---------------------------------------- 已编辑以包含可重现的示例 ---------------- ------------
对这个问题的有用评论和通过示例给出了答案 - 这不是添加第二个分组变量本身,而是导致问题的分组变量中的缺失。
对于遇到此问题的其他人来说,这是一个可行的示例。
为了说明起见,这是一个简单的功能...
示例数据(完整)
与这些数据一起工作正常
但是,当我们在分组变量中引入缺失时......