To put my question into context, I am a physicist but with limited exposure to statistics and what I have learned about it was over 30 years ago.

I am trying to learn about block bootstrapping as that technique might be suitable for solving an issue I am working on. I can find lots of papers/books/info on the mathematics of block bootstrapping but I would like to find first a generic description of the process of block bootstrapping before 'venturing' into issues as moving block bootstrapping, circular block bootstrapping, stationary block bootstrapping, blocklengths, samplesize, etc.

I have oversampled correlated data, 5 variables (columns) by 10000 observations (rows) which I want to reduce to about 100 rows of data. The data is a timeseries, but not continuous and there might be data from different locations in it too, which means you can have different data at the same time (if the latter is an issue for block bootstrapping, I could remove 'duplicated' data in time). Block bootstrapping would allow to replicate the correlation of the data.

The ultimate aim is to reduce the dataset to ~100 rows of data such that both pdf and cdf of the full dataset and the reduced dataset are the same (within a still-to-be-defined minimum error range) for all 5 variables .

Question: 1) Will block bootstrapping be able to do this? 2) What is the step-by-step process this is done? I don't expect anyone to write the full process in detail here, but maybe someone has put a youtube video or a 'bootstrapping for dummies' out there that I could start with.

I have looked at similar questions on block bootstrapping here and there is one on "Resources to learn about block bootstrap in time series analysis", but references in the answers assume a statistical literacy I still have to master.


Model-free resampling of time series is accomplished by block resampling, also called block bootstrapping, which can be implemented using the tsboot function in R’s boot package. The idea is to break the series into roughly equal-length blocks of consecutive observations, to resample the block with replacement, and then to paste the blocks together. For example, if the time series is of length 200 and one uses 10 blocks of length 20, then the blocks are the first 20 observations, the next 20, and so forth. A possible resample is the fourth block (observation 61 to 80), then the last block (observation 181 to 200), then the second block (observation 21 to 40), then the fourth block again, and so on until there are 10 blocks in the resample. How do you do bootstrapping with time series data?

  • 3
    $\begingroup$ What economia explained about boostrapping is correct but note that the bootstrapped sample is not used for reducing a dataset to a smaller data set with the same underlying distribution. ( which you said was your goal ). Bootstrapping is used for testing some hypothesis by creating the bootstrapped sample and then seeing where the statistic ( the one which is being tested ) falls with respect to the empirical distribution of the bootstrapped sample. So, reduction of a data set to a smaller data set is not the goal of bstrapping. It's used for hypothesis testing in a model free way. $\endgroup$
    – mlofton
    Oct 14 '18 at 22:35

Not the answer you're looking for? Browse other questions tagged or ask your own question.