R dplyr条件和与动态条件

时间:2016-03-09 10:08:01

标签: r dplyr

我需要计算列" sum_other_users_30d"来自以下数据集(示例):

id user count date_start date_current **sum_other_users_30d**
1    1     3 2015-01-01   2015-01-07                  16
1    1     2 2015-01-01   2015-01-10                  16
1    1     5 2015-01-01   2015-01-20                  16
1    1     1 2015-01-01   2015-02-22                  16
1    2     1 2015-02-02   2015-01-15                   3
1    2     1 2015-02-02   2015-01-10                   3
1    2     6 2015-02-02   2015-01-30                   3
1    2     2 2015-02-02   2015-02-22                   3
1    3     1 2015-01-16   2015-01-17                  14
1    3     1 2015-01-16   2015-01-31                  14
1    3     6 2015-01-16   2015-01-30                  14
1    3     2 2015-01-16   2015-02-22                  14

每次观察的sum_other_users_30d的值是其他用户值的计数(用户!=当前obs中的用户)的总和,date_current在给定date_start的30天内(date_current - 30< = date_start in current obs)

例如,在第一行中,16的总和由以下计数值组成:

id user count date_start date_current sum_other_users_30d
1    2     1 2015-02-02   2015-01-15                   3
1    2     1 2015-02-02   2015-01-10                   3
1    2     6 2015-02-02   2015-01-30                   3
1    3     1 2015-01-16   2015-01-17                  14
1    3     1 2015-01-16   2015-01-31                  14
1    3     6 2015-01-16   2015-01-30                  14

我试图在dplyr中使用mutate()进行此操作,但是我无法找到一种方法来将和条件引用到特定的观察值(用户不等当前用户等)。 我很感激你的帮助!

0 个答案:

没有答案