Choose your reading route
eduKateSG · Why Mathematics? · Moving Block Bootstrap: Resampling Dependent Time Series
Start with the question, audit the worked example, or jump to the assumptions and practice. Every chapter stays open for uninterrupted reading.
Understand the question
Define the quantity and follow the mechanism.Route 2 · Chapters 6–11
Reproduce the example
Audit the numbers one step at a time.Route 3 · Chapters 12–18
Check assumptions
See where design and calibration matter.Route 4 · Chapters 19–24
Explore applications
Connect the method to a concrete investigation.Route 5 · Chapters 25–35
Study and verify
Practise, inspect failure cases and read further.
Full chapter index · Practice and checking · Mathematics Learning Hub
Why is mathematics important when ordinary bootstrap resampling would tear a time series into isolated points and destroy the very dependence that controls uncertainty? The moving block bootstrap resamples overlapping consecutive blocks. It preserves local order inside each selected block while creating many plausible series for estimating sampling variation.
Did You Know? With a block length of one, the moving block bootstrap becomes an ordinary independent resample. Increasing the block length preserves more dependence but leaves fewer effectively independent pieces.
Full chapter index
Chapters 1–5 · Understand the question
Chapters 6–11 · Reproduce the example
Chapters 12–18 · Check assumptions
Chapters 19–24 · Explore applications
Chapters 25–35 · Study and verify
An ordinary nonparametric bootstrap draws individual observations with replacement. That is appropriate for independent observations under standard conditions. In a time series, isolated resampling breaks autocorrelation, runs, seasonality and short-range dynamics.
Künsch introduced block resampling for general stationary observations. Current R documentation describes the moving block bootstrap as randomly resampling overlapping blocks of length l that begin at positions 1 through N−l+1. Read the implementation documentation.
For a series x_1,…,x_N and block length l, create blocks (x_1,…,x_l), (x_2,…,x_{l+1}) and so on through (x_{N−l+1},…,x_N). There are N−l+1 possible starting positions.
| Start | Block |
|---|---|
| 1 | 2, 3, 5 |
| 2 | 3, 5, 4 |
| 3 | 5, 4, 6 |
Draw blocks independently with replacement and concatenate them until the resampled series reaches at least N observations. Truncate the final block to length N. Compute the target statistic and repeat many times.
Take [2,3,5,4,6] with l=3. Blocks are [2,3,5], [3,5,4] and [5,4,6]. If blocks 1 and 3 are drawn, concatenate [2,3,5,5,4,6] and truncate to [2,3,5,5,4]. Its mean is 19/5=3.8; the original mean is 4.0.
| Original mean | Replicate | Replicate mean |
|---|---|---|
| 4.0 | 2, 3, 5, 5, 4 | 3.8 |
Each chosen block keeps l−1 adjacent transitions from the original series. Boundaries between sampled blocks create artificial joins. Across many replicates, local dependence is represented while global series realisations vary.
Short blocks provide many possible starts and more resampling variability but preserve little dependence. Long blocks preserve longer patterns yet supply fewer distinct blocks and fewer effective resampling units. No universal block length is best.
The basic moving block bootstrap assumes a sufficiently stationary dependence structure so blocks from different times are exchangeable. Trends, seasonal mean changes and structural breaks can make early and late blocks systematically different.
A defensible workflow may model trend or seasonality, resample approximately stationary residual blocks and reconstruct the series. This is model-assisted and must be reported; it is not permission to remove inconvenient structure without validation.
A circular variant wraps the end of the series to the beginning, giving each observation the same number of potential block appearances. That may reduce edge imbalance, but the artificial wrap must make sense for the application.
The stationary bootstrap uses random block lengths, often geometrically distributed, rather than one fixed l. It produces a stationary resampling scheme under conditions and offers a different bias–variance trade-off.
Tapered block methods down-weight block edges to soften artificial joins. They add choices and complexity. The right variant depends on the statistic, dependence and sample size rather than on a single fashionable method.
After B replicates, the standard deviation of replicate statistics estimates a standard error. Percentile or more advanced intervals need their own assumptions and calibration. More replicates reduce Monte Carlo noise but do not repair a poor block length.
Two analysts using the same data and block rule can obtain slightly different results from finite random resampling. Set and report a random seed when reproducibility is needed, and use enough replicates to stabilise the reported digits.
For daily demand with weekly persistence, a block length near a dependence horizon may preserve runs better than isolated resampling. Calendar effects and holidays still need modelling; block resampling does not automatically make the series stationary.
A sensor's noise may persist for several readings. Resampling consecutive residual blocks can estimate uncertainty for an average or trend while retaining local drift. Calibration shifts and device replacement remain structural changes, not routine dependence.
Block ideas extend to spatial patches, where nearby locations are resampled together. Geometry, boundary treatment and anisotropy matter. A one-dimensional moving block should not be applied blindly to a two-dimensional map.
Report results over several scientifically plausible block lengths and plot how standard errors or interval endpoints change. If the conclusion depends on one narrow choice, the uncertainty analysis should say so.
State the series unit, block variant, block length, statistic, number of replicates, seed and interval construction.
Moving blocks do not repair nonstationarity, very short series, long memory beyond chosen blocks, bad measurement, omitted trends, causal confounding or a statistic whose bootstrap distribution is poorly approximated.
Students can cut a short sequence into overlapping blocks, draw them by hand and see which transitions survive. This turns dependence from an abstract autocorrelation into a visible resampling mechanism.
Place the ordered series in one column, enumerate every block start, use a random index column to draw blocks, concatenate and truncate. Compute the replicate statistic and repeat. Preserve the seed, block length and original order.
Use a documented time-series bootstrap routine, explicit block length and fixed seed. Unit-test the five-value example, monitor Monte Carlo stability as B grows, and compare several block lengths. Never shuffle the input before block construction.
Block bootstrap methods support economics, climate analysis, engineering reliability, ecology, finance and operations. Practical work also requires domain knowledge about dependence horizons, breaks, seasons and measurement systems.
Simulate an AR(1) series at low and high persistence. Compare ordinary bootstrap and moving-block standard errors for the mean. Vary l and N, then compare estimates with repeated-simulation truth.
Block bootstrap is not automatically valid for any ordered data, does not choose l by magic, does not make a short series long and does not preserve every global feature. More replicates reduce simulation noise, not model bias.
The Newey–West HAC guide estimates long-run covariance analytically. The cluster-robust guide resamples no data but changes covariance logic. The standard-error guide explains what the bootstrap standard deviation is trying to estimate.
Students should show the actual blocks and one replicate before using software. Parents can ask what pattern the block length preserves and what a different length changes. This keeps the method connected to the data-generating process.
- List all length-three blocks.
- Recreate the worked replicate and mean.
- Compare l=1 with l=5.
- Explain artificial block boundaries.
- Name one sign of nonstationarity.
### Why not resample single observations? That destroys local dependence.
### Is a longer block always better? No.
### Do more replicates fix a bad block length? No.
### Must the series be ordered? Yes.
Name the sampling unit, model, target parameter, dependence structure, estimator, correction and validation checks. Show the calculation or reproducible code, report uncertainty as an interval, and separate what the method estimates from what the study design can support.
A bootstrap replicate contains roughly N/l blocks. As l grows, fewer pieces are independently drawn, so resampling variability and dependence preservation change together. This is the central tuning trade-off.
Overlapping source blocks share observations, while concatenated replicate blocks may join values that were never neighbours. Inspect whether the target statistic is sensitive to these joins and consider circular, stationary or tapered alternatives when justified.
Confirm ordering, approximate stationarity, block variant, length rationale, number of replicates, seed, interval method and sensitivity. Report unresolved breaks, seasonality or long-memory concerns.
Continue through the Mathematics Learning Hub. Reproduce the worked example by hand, then verify it with documented software before applying the method to a larger dataset.
Extended practice laboratory
Practice case 1: Order the series
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 1. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 2: Choose block length
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 2. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 3: List block starts
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 3. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 4: Construct overlapping blocks
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 4. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 5: Draw first block
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 5. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 6: Draw second block
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 6. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 7: Concatenate blocks
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 7. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 8: Truncate to N
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 8. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 9: Calculate replicate mean
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 9. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 10: Repeat resampling
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 10. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 11: Estimate bootstrap SE
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 11. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 12: Build percentile interval
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 12. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 13: Increase replicates
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 13. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 14: Change random seed
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 14. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 15: Set l to one
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 15. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 16: Increase l
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 16. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 17: Add persistence
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 17. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 18: Add a trend
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 18. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 19: Remove seasonality
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 19. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 20: Try circular blocks
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 20. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 21: Try stationary blocks
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 21. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 22: Reject magic-length claim
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 22. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 23: Report sensitivity
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 23. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 24: Name limitations
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 24. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.
Practice case 25: Write conclusion
Setup: Start from the article’s moving-block bootstrap worked mechanism for case 25. Task: Change the named quantity, recompute the dependent result and compare it with the original.
Check: Preserve the sampling, group or time unit, verify the defining identity and state one validation check before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.