I want to test whether segment series explains anything in additional to the full series.

Let's say y and ts_full are time series with same length. And I divide ts_full to 3 non-overlapping sub time series with same length: ts_1 - ts_3. For example, ts_1 has valid values in first time segment and 0 in the rest. Same thing apply to ts_2, ts_3. In this case, ts_full = ts_1 + ts_2 + ts_3

My equation is:

y = b_0 + b_full * ts_full + b_1 * ts_1 + b_2 * ts_2 + b_3 * ts_3 + e

Can I do this? I get very weird result that t-stats for every coefficient is very significant. After second thought, I feel it may break the linear regression assumption that one dependent variable can't be perfect linear combination of others. So I rewrite it as:

y = b_0 + b_full * ts_full + b_1 * ts_1 + b_2 * ts_2 + e

The result then becomes more reasonable. But how should I interpret b_full, b_1 and b_2 then? Can I say b_full is the base coefficient and b_1/b_2 are incremental for sub segment? What's the relationship between b_full and b_clean where b_clean is just simple regression coefficient (y = b_0 + b_clean * ts_full + e)?


  • $\begingroup$ You have forgotten to mention what are your y values. I am guessing that you might be either trying to find out whether your time-series has a change in trend (slope), in which case you are trying to fit a piecewise regression en.wikipedia.org/wiki/Segmented_regression (Though you you should know about the pitfalls of applying a linear model to time-series data. Especially about heteroscedasticity.), or you are looking for a "jump" in the general level of the series across different segments, in which case you should look into changepoint detection of the mean. $\endgroup$ – means-to-meaning Jan 13 '14 at 22:41

I don't think I understand the question. But I'll throw something out there and maybe it'll get others to respond.

if ts_full=0,1,2,3,...;
the breaks happen at T1 and T2

ts_1=0 before T1 and ts_1=ts_full-T1 after T1;
ts_2=0 before T2 and ts_2=ts_full-T2 after T2;
then for y~ts_full+ts_1+ts_2

ts_full = trend prior to T1;
ts_full+ts_1 = trend after T1 and before T2;
ts_full+ts_1+ts_2=trend after T2;
ts_1 = change in trend at T1;
ts_2 = change in trend at T2;

for y~ts_clean;
ts_clean if the trend across all three time periods;
ts_full above is the trend only across time before T1;
if ts_1 and ts_2 = 0 then the ts_clean should be the same as ts_full (the trend in the first time period was representative of all three time periods)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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