Matlab でブートストラップを実行したいと思います。元のデータ ポイントが 100 ありますが、ブートストラップの反復ごとに 57 ポイントのみを選択し、ランダムに置換したいと考えています。どうすればそれを達成できますか?
Matlab function でこの機能を見つけることができないようですbootstrp
。
よろしく、
Matlab でブートストラップを実行したいと思います。元のデータ ポイントが 100 ありますが、ブートストラップの反復ごとに 57 ポイントのみを選択し、ランダムに置換したいと考えています。どうすればそれを達成できますか?
Matlab function でこの機能を見つけることができないようですbootstrp
。
よろしく、
n
置換を使用してベクトルからポイントをランダムに選択するには: を使用randi
して (場合によっては繰り返される) インデックスを生成します。
vector = (1:100).^2; %// example data
n = 57;
ind = randi(numel(vector),1,n); %// n random integers between 1 and numel(vector)
sample = vector(ind);
で直接行うにはbootstrp
: letfun
に渡す関数を示しますbootstrp
。各 100 値サンプルの最初の 57 値を選択するだけです。
vector = (1:100).^2; %// example data
n = 57;
nboot = 10;
bootstrp(nboot, @(x) fun(x(1:57)), vector)