2016-03-06 54 views
0

我搜索了幾天,仍然難倒了。計算日期中的運行差異作爲新的數據幀列

鑑於由以下所定義的數據集:

ids = c("a","b","c") 
dates = c(as.Date("2015-01-01"), as.Date("2015-02-01"), as.Date("2015-02-15")) 
test = data.frame(ids, dates) 

我試圖動態地添加新的列中的數據幀,其值將是柱日期(2015年3月1日)之間的差值和日期欄中的值。我希望結果看起來像下面這樣,但列名更好:

d20150301 = c(59, 28, 14) 
result = data.frame(ids, dates, d20150301) 

非常感謝提前。

回答

1

您可以從一個日期減去日期的載體,所以

test$d2015_03_01 <- as.Date('2015-03-01')-test$dates 

使得test樣子

> test 
    ids  dates d2015_03_01 
1 a 2015-01-01  59 days 
2 b 2015-02-01  28 days 
3 c 2015-02-15  14 days