Bootstrap一个方阵用Matlab

Bootstrap a square matrix with Matlab

我想了解如何使用 matlab bootstrap 方阵。有什么建议吗?

Bootstrap为采样方式。最主要的是你如何对数据进行采样。

bootstat = bootstrp(nboot,bootfun,d1,...)
[bootstat,bootsam] = bootstrp(...)
bootstat = bootstrp(...,'Name',Value)

第三个和后面的输入参数 (d1,...) 是用于创建 bootfun 输入的数据(标量、列向量或矩阵)。 bootstrp 通过从 non-scalar 数据参数的行(它们必须具有相同的行数)中进行替换抽样来创建每个 bootstrap 样本。 bootfun 接受不变的标量数据。

举个例子;

  [bootstat,bootsam] = bootstrp(4,...)

returns n-by-4 矩阵 bootstrap 索引,bootsam。 bootsam 中的每一列都包含从原始数据集中提取的值的索引,以构成相应的 bootstrap 样本。

另一个例子是;

 load lawdata
 rng default  % For reproducibility
[bootstatistics,bootsamples] = bootstrp(1000,@corr,lsat,gpa);

这里bootstatistics是(@corr)相关统计矩阵,bootsamples是bootstrap样本。 lawdata 有 15 名学生的 LSAT 成绩和 GPA。这 15 个数据点被重新采样以创建 1000 个不同的数据集,并为每个数据计算两个变量之间的相关性