真的很简单的问题,但不知为何我被卡住了,我有用户每日任务的面板数据。现在我想知道一个用户平均做多少任务,但不知为何我不知道怎么做。还有一个用户平均每个任务需要多长时间。另外,如果可能的话,我想把这些数据绘制出来。我做了正常的描述,但我觉得这不是我所需要的.数据看起来有点像这个用户(1,1,1,2,2,3)任务( 1,1,2,3,4,5)日( 1,2,1,1,2,1)任务创建(1,1,1,4,4,3)截止日期(5,5,5,9,9,4)
id_task id_user day completion_yesno day_created has_deadline deadline created_before active overdue completed_before
16416 37033 5272 61 0 61 1 172 0 0 0 0
16417 37033 5272 62 0 61 1 172 2 2 0 0
16418 37033 5272 63 0 61 1 172 2 2 0 0
16419 37033 5272 64 0 61 1 172 2 2 0 0
16420 37033 5272 65 0 61 1 172 2 2 0 0
16421 37033 5272 66 0 61 1 172 2 2 0 0
16422 37033 5272 67 0 61 1 172 2 2 0 0
16423 37033 5272 68 0 61 1 172 2 2 0 0
16424 37033 5272 69 0 61 1 172 2 2 0 0
16425 37033 5272 70 0 61 1 172 2 2 0 0
16426 37033 5272 71 0 61 1 172 2 2 0 0
16427 37033 5272 72 0 61 1 172 2 2 0 0
16428 37033 5272 73 0 61 1 172 2 2 0 0
16429 37033 5272 74 0 61 1 172 2 2 0 0
16430 37033 5272 75 0 61 1 172 2 2 0 0
16431 37033 5272 76 0 61 1 172 2 2 0 0
16432 37033 5272 77 0 61 1 172 2 2 0 0
16433 37033 5272 78 0 61 1 172 2 2 0 0
16434 37033 5272 79 0 61 1 172 2 2 0 0
16435 37033 5272 80 0 61 1 172 2 2 0 0
在这种情况下,一个用户平均要做2个任务,但我只是通过计算发现。
只保留用户、任务和完成的信息。去掉重复的行,然后按用户分组,计算每个用户的完成任务数。
df_by_user <- df %>%
select(id_user, id_task, completion_yesno) %>%
unique() %>%
group_by(id_user) %>%
summarise(n = sum(completion_yesno))
然后计算出平均数
mean(df_by_user$n)