Iff dd is your data frame then:
dd$prev <- ave(dd$of, dd$Id, FUN = function(x) c(NA, head(x, -1)))
On Wed, Oct 21, 2009 at 2:55 AM, clion <birte_2 at hotmail.com>
wrote:>
> Dear Rlers,
> in the following dataset I would like to insert a new column that refers to
> the data of the previous row.
> My question is whether the probability of a female (Id) changes if she had
> given birth to a pup in the previous year. So my dataframe consists of the
> column Id, year (2003-2007 for each Id) and offspring (=of; 1-0):
> Id ? year ? of
> 1 ? 2003 ? 1
> 1 ? 2004 ? 0
> 1 ? 2005 ? 1
> 1 ? 2006 ? 1
> 1 ? 2007 ? 0 ? ? ?with 1= female (Id) gave birth to offspring (same year)
> 2 ? 2003 ? 0 ? ? ?and 0 = female didn't pup
> 2 ? 2004 ? 1
> 2 ? 2005 ? 1
> 2 ? 2006 ? 0
> 2 ? 2007 ? 1
> 3 ? 2003 ? 1
> 3 ? 2004 ? 1
> 3 ? 2005 ? 1
> 3 ? 2006 ? 0
> 3 ? 2007 ? 0
> Now I want to add the column "offspring in the previous year -
yes/no(1-0)"
> the output now should look like this:
>
> Id ?year ? of ? of_inPreviousYear
> 1 ? 2003 ? 1 ? NA
> 1 ? 2004 ? 0 ? 1
> 1 ? 2005 ? 1 ? 0
> 1 ? 2006 ? 1 ? 1
> 1 ? 2007 ? 0 ? 1
> 2 ? 2003 ? 0 ? NA
> 2 ? 2004 ? 1 ? 0
> 2 ? 2005 ? 1 ? 1
> 2 ? 2006 ? 0 ? 1
> 2 ? 2007 ? 1 ? 0
> 3 ? 2003 ? 1 ? NA
> 3 ? 2004 ? 1 ? 1
> 3 ? 2005 ? 1 ? 1
> 3 ? 2006 ? 0 ? 1
> 3 ? 2007 ? 0 ? 0
>
> any idea how I could program that?
>
> thanks a lot,
> clion
> --
> View this message in context:
http://www.nabble.com/referring-to-data-of-previous-rows-tp25987364p25987364.html
> Sent from the R help mailing list archive at Nabble.com.
>
> ______________________________________________
> 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.
>