如何计算R中行观察值之间的日期差异

时间:2016-03-17 22:29:27

标签: sql r datediff

以下是示例数据框(Market_Test)Not sure of DataFrame comes out properly or not hence the image

Submarket   Market          Date            URL of test
Seattle_Sub1    Seattle         1/2/2016        Abc.com/test1
Seattle_Sub2    Seattle         1/3/2016        Abc.com/test2
Seattle_Sub1    Seattle         1/5/2016        Abc.com/test3
Portland_Sub1   Portland    1/15/2016   Abc.com/test4
Portland_Sub2   Portland    1/10/2016   Abc.com/test3
Portland_Sub2   Portland    1/11/2016   Abc.com/test2
Portland_Sub1   Portland    1/10/2016   Abc.com/test1

我需要在SubMarket Level上计算和转动数据,使其看起来如下OutputData Frame Image -

Submarket   Market       No of Days Testing   Gap b/w test Days
Seattle_Sub1    Seattle           2                3
Seattle_Sub2    Seattle           1                0
Portland_Sub1   Portland      2                5
Portland_Sub2   Portland      2                1

大约有300,000个观测值,因此相对较大的数据集。

我能够使用sqldf和非常计数轻松解决No of Days Testing问题,但是通过Gap b / w Test Days计算遇到障碍。

我试过的一件事是使用原始数据帧的排名,然后计算2个排名值之间的差值,但是在ddply中,但这需要很长时间,事实上它永远不会完成。

Inputdf <- mutate(Inputdf,Date_Rank = rank(Date)) 

其他选项可能是在sql中使用lag / lead函数,但是sqldf不允许这样做。

非常感谢。

0 个答案:

没有答案