rollapply用于数据帧中具有条件的某些值
我试图根据一个条件或一组值对列中的一些值应用乐趣。我制作了一个data.frame来表示这种情况:rollapply用于数据帧中具有条件的某些值,r,dplyr,R,Dplyr,我试图根据一个条件或一组值对列中的一些值应用乐趣。我制作了一个data.frame来表示这种情况: df <- data.frame (date = c("1", "1","2","2","3","3"), Area = c("S1", "S2","S1", "S
df <- data.frame (date = c("1", "1","2","2","3","3"),
Area = c("S1", "S2","S1", "S2","S1", "S2"),
People = c(1, 2,10,20,100,200))
我一直在尝试下一个代码,但我得到了错误的答案或代码错误
尝试1
df_2 <- df_2 %>%
group_by(Sector) %>%
mutate(SumPeople = ifelse(date==3,rollapplyr(df_2$People,width= 3, sum, by = 3),""))
请与您提供的示例数据保持一致。您将第一列指定为“date”,但(我想)您在代码中使用了西班牙语单词“fecha”来引用它,这让人困惑
date Area People tot_peop SumPeople Sum_tot_people
1 1 S1 1 3
2 1 S2 2 3
3 2 S1 10 30
4 2 S2 20 30
5 3 S1 100 300 111 333
6 3 S2 200 300 222 333
df_2 <- df_2 %>%
group_by(Sector) %>%
mutate(SumPeople = ifelse(date==3,rollapplyr(df_2$People,width= 3, sum, by = 3),""))
mutate(xx = ifelse(date!="P3","",rollapplyr(df$Afiliados,2,sum,by= 3,by.column=FALSE)))