2016-03-15 99 views
0

我有以下數據框,我想計算每個用戶的最早和最新日期之間的時間差。子集數據和計算時差

> data1 
     date user PC 
1 1/4/2010 BAC0081 PC1 
2 1/5/2010 BAC0081 PC2 
3 1/6/2010 BAC0081 PC3 
4 1/7/2010 BAC0081 PC4 
5 1/4/2010 BAC0082 PC5 
6 1/5/2010 BAC0082 PC6 
7 1/6/2010 BAC0082 PC7 
> 

結果我期望的是;

BAC00813天

BAC00822天

我找不到執行此功能的有效途徑。任何人都可以告訴我一個正確的方法來做這件事。

感謝

回答

0

如果您有日期欄格式正確無誤:

lapply(split(data1[, 1], data1[, 2]), function(x) range(x)[2] - range(x)[1]) 
+0

非常感謝您的回覆。這對我來說很好。 – Anna