2016-07-10 53 views
2

我想延長「單變量自舉」到「多元bootsrapping」,在第一個步驟I與替換隨機抽出使用此代碼的一維向量的含義:自舉在Matlab

s = RandStream.getGlobalStream(); 
reset(s) 

n = 100000;     % # of independent random trials 
h = 52;      % horizon 
T = size(Resid_standard, 1); 

Resid_bootstrapped = Resid_standard(unidrnd(T, h, n)); 

現在,基本矢量Resid_standard不是一個單維向量,而是一個Tx2矩陣,我不僅要繪製隨機數,而且要隨機地繪製隨機數。

  • 如何修改我的代碼以實現此目的?
  • 單變量情況下的輸出是100000x50矩陣。二維情況下的輸出將是三維的。我怎樣才能存儲我的結果?
+0

你可能想RET-AG的問題爲[標籤:統計的自舉],如果合適的話(我會做我自己,但我我不熟悉你的問題的主題,所以我不確定它是否正確)。 –

回答

0

一種解決方案是存儲索引向量,利用線性索引,並且連接結果:然後

r_ind = unidrnd(T, h, n); 
Resid_bootstrapped = cat(3, Resid_standard(r_ind), Resid_standard(r_ind + T)); 

Resid_bootstrapped將是一個h×n×2矩陣。

這甚至可以縮短到一個班輪:

Resid_bootstrapped = reshape(Resid_standard(unidrnd(T, h, n), [1,2]), h, n, 2);