[R] creating lagged variable in panel data
Alok Bohara, PhD
bohara at unm.edu
Thu Aug 30 04:23:14 CEST 2012
Sorry, this is what I used :
f <- function(x) {
wage <- ts(x$wage, start = x$year[1])
idx <- seq(length = length(wage))
wages <- cbind(wage, wage.lag1 = lag(wage, -1))[idx,]
cbind(x, wages)
}
result <- do.call("rbind", by(A, A$person, f))
result
Alok
On 8/29/2012 7:43 PM, R. Michael Weylandt wrote:
> On Wed, Aug 29, 2012 at 8:20 PM, Alok Bohara, PhD <bohara at unm.edu> wrote:
>> Thanks for the input. I wanted to avoid counting the column number. In
>> any case, in the script -- wage.lag1 = lag(wage, -1) seems to do the trick.
> The important thing is that "4" in my example below can be any
> computable expression: e.g., if you want the last column
>
> colnames(dats)[NCOL(dats)] <- ...
>
> Alternatively, you can change the name at construction, but I couldn't
> give you a hint there since you didn't tell us how you went about
> adding the column.
>
> Note something like this though:
>
> dts <- data.frame(x = 1:5, y = letters[5:1])
>
> dts2 <- cbind(dts, z = rnorm(5))
>
> print(dts2)
>
> Cheers,
> Michael
>> Alok
>>
>> On 8/29/2012 12:29 PM, R. Michael Weylandt <michael.weylandt at gmail.com>
>> wrote:
>>> Of course:
>>>
>>> colnames(dats)[4] <- "new name"
>>>
>>> M
>>>
>>> On Aug 29, 2012, at 9:34 AM, "Alok K Bohara, PhD" <bohara at unm.edu> wrote:
>>>
>>>> Hi
>>>>
>>>> I found an example in R to create a lagged panel data set which works
>>>> fine. The only problem is that it adds the lagged variable as follows
>>>>
>>>> wage2.dat
>>>>
>>>> year person wage lag(wage, -1)
>>>> 1.1 1980 1 -0.75843997 NA
>>>> 1.2 1981 1 0.27233048 -0.75843997
>>>> 1.3 1982 1 -1.58335767 0.27233048
>>>> 1.4 1983 1 0.36805926 -1.58335767
>>>> 1.5 1984 1 -0.52312153 0.36805926
>>>> 2.6 1980 2 -0.53559110 NA
>>>> 2.7 1981 2 -0.94935350 -0.53559110
>>>> 2.8 1982 2 0.10486688 -0.94935350
>>>> 2.9 1983 2 -0.50266443 0.10486688
>>>> 2.10 1984 2 0.14644024 -0.50266443
>>>> .
>>>> .
>>>>
>>>> Is there anyway I could rename the last column wag.lag1? Thanks.
>>>>
>>>>
>>>> Best,
>>>> Alok
>>>>
>>>> ______________________________________________
>>>> R-help at r-project.org mailing list
>>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>>> PLEASE do read the posting guide
>>>> http://www.R-project.org/posting-guide.html
>>>> and provide commented, minimal, self-contained, reproducible code.
>>
>>
>> --
>> Alok K. Bohara, Ph.D.
>> Professor
>> Department of Economics
>> MSC 05 3060
>> 1 University of New Mexico
>> Albuquerque, NM 87131-0001, USA
>> Ph: 505-277-5903/5304(w)
>> Fax:505-277-9445
>> email: bohara at unm.edu
>> http://www.unm.edu/~econ/faculty/professors.html
>> Nepal Study Center: http://nepalstudycenter.unm.edu
>>
--
Alok K. Bohara, Ph.D.
Professor
Department of Economics
MSC 05 3060
1 University of New Mexico
Albuquerque, NM 87131-0001, USA
Ph: 505-277-5903/5304(w)
Fax:505-277-9445
email: bohara at unm.edu
http://www.unm.edu/~econ/faculty/professors.html
Nepal Study Center: http://nepalstudycenter.unm.edu
More information about the R-help
mailing list