SHAZAM Community

Debug mode is on, do not use it in production. To turn it off, use DEBUG = False in your file.

Ask Your Question

Generating - transformation of a time series variable

asked 2012-06-26 05:02:16 +0000

Pantera gravatar image

updated 2012-06-26 07:47:03 +0000

Hi all,

I have the following problem: I want to generate a new time series variable which measures the accumulated (the sum) of an existing variable "X". The new variable is a sum inside a given moving time window with a constant width of let say 40 years. More precisely - the new variable is generating in the following way: Let the sum of the first 40 observations from time point t = 1 to t = 40 represents the first observation, the second observation is the sum of the observations from t = 2 to time point t = 41, the third observation is the sum of observations from t = 3 to t = 42 etc. The constant time window of 40 years is moving by one step at the time. It's like a moving average but WITHOUT dividing by the number of observations. I hope one of you Shazam experts could look into the problem - it would be of great help.

Regards, P.

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2012-06-26 16:45:42 +0000

ken gravatar image

updated 2012-06-26 17:10:29 +0000

* Program to create moving sums of a variable
sample 1 10
* generate some simple data to make it easy to check
genr x=time(0)
* initialize the moving sum variable
genr msum=0
* add up the number of lags (this example does current plus last 2)
* if you dont like output, you can SET NODOECHO after it works
do #=0,2
genr msum=msum+lag(x,#)
* print it out, the first few observation will be garbage
print x msum
edit flag offensive delete link more


Ken - Thanks a lot for your help - it function perfectly! :)

Pantera gravatar imagePantera ( 2012-06-27 01:55:56 +0000 )edit
Login/Signup to Answer

Question Tools


Asked: 2012-06-26 05:02:16 +0000

Seen: 413 times

Last updated: Jun 26 '12