1
我在R中的以下數據框:差異采用不同的行作爲開始
ID year event_year
432674326 2000 NA
432674326 2001 NA
432674326 2002 NA
432674326 2003 NA
432674326 2004 NA
432674326 2005 2005_1
432674326 2006 NA
432674326 2007 NA
432674326 2008 NA
432876423 2003 NA
432876423 2004 NA
432876423 2005 NA
432876423 2006 NA
432876423 2007 2007_82
432876423 2008 NA
432876423 2009 NA
432876423 2010 NA
而且我想創建一個計算我的活動一年,在各行各年之間的差異列。結果應該如下所示:
ID year event_year timediff
432674326 2000 NA -5
432674326 2001 NA -4
432674326 2002 NA -3
432674326 2003 NA -2
432674326 2004 NA -1
432674326 2005 2005_1 0
432674326 2006 NA 1
432674326 2007 NA 2
432674326 2008 NA 3
432876423 2003 NA -4
432876423 2004 NA -3
432876423 2005 NA -2
432876423 2006 NA -1
432876423 2007 2007_82 0
432876423 2008 NA 1
432876423 2009 NA 2
432876423 2010 NA 3
我與plyr努力,但我不能修復的基準年到事件的一年。我只能用下面的某個延遲,這並沒有給我預期的結果。
df %>%
group_by(ID) %>%
mutate(timediff = year - lag(year))
任何幫助將不勝感激!