[R] Temporal disaggregation
stef salvez
loggyedy at googlemail.com
Sun Jun 17 00:25:52 CEST 2012
Dear R users,
I have a panel data set (in MS excel) on prices across countries and time
country time price
1 "23/11/08" 2
1 "28/12/08" 3
1 "25/01/09" 4
1 "22/02/09" 5
1 "29/03/09" 6
1 "26/04/09" 32
1 "24/05/09" 23
1 "28/06/09" 32
2 "26/10/08" 45
2 "23/11/08" 46
2 "21/12/08" 90
2 "18/01/09" 54
2 "15/02/09" 65
2 "16/03/09" 77
2 "12/04/09" 7
2 "10/05/09" 6
As you can see,
1)the start and end date of the time series for countries 1 and 2 are
different. For example, for country 1 the time series begins on
"23/11/08" while for country 2 the time series begins on "26-10-2008”.
2)My data on prices are available every 28 days (or equivalently every 4
weeks). So, each observation is a 4-week average. But in some cases I
have jumps (35 days or 29 days instead of
28 days). For example from the above table we have such jumps: from
"28/12/08" to "28/12/08" , from 22/02/09" to "29/03/09", etc
My goal is to have a unified sequence of dates across countries.
Otherwise I will not be able to do further data/econometric analysis,
Unless you have different suggestion, I want to take what I have and
calculate monthly average prices and also report how many prices those
averages are based on. I suppose that I will still have gaps and may
well need to interpolate.
Put differently, I want to interpolate the 4-week average prices to
monthly average prices.
The problem is also the jumps where I have 5 weeks in some cases and I
want to find the monthly average of it.
I do not want something like
country yearmon avg.price freq
1 1 Nov 2008 2 1
2 1 Dec 2008 3 1
3 1 Jan 2009 4 1
4 1 Feb 2009 5 1
5 1 Mar 2009 6 1
6 1 Apr 2009 32 1
7 1 May 2009 23 1
8 1 Jun 2009 32 1
9 2 Oct 2008 45 1
10 2 Nov 2008 46 1
11 2 Dec 2008 90 1
12 2 Jan 2009 54 1
13 2 Feb 2009 65 1
14 2 Mar 2009 77 1
15 2 Apr 2009 7 1
16 2 May 2009 6 1
Please, I would be grateful to you if you could provide the exact code
for doing this
thank you
More information about the R-help
mailing list