微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为R中的Date变量优化If Else

如何解决为R中的Date变量优化If Else

我正在使用包含有关Covid的城市的信息的数据集,并且如果日期t中的城市x是隔离的,我想添加一个变量,我创建了ifelse代码,但是进行2.3MM观测需要花费很多时间我有

我的数据集如下

City     Date
a      2020-03-04    
b      2020-03-04
a      2020-03-05    
b      2020-03-05
a      2020-03-06   
b      2020-03-06 
a      2020-03-07 
b      2020-03-07 

我的代码是这个

library(data.table
df <- df %>% 
   mutate(quarantine = 0)
df <- df %>%
   mutate(quarantine = fifelse(City = "a",fifelse(Date > as.Date("2020-03-04") &
                                      Date <= as.Date("2020-03-06"),1,0),quarantine) %>%
   mutate(quarantine = fifelse(City = "b",fifelse(Date > as.Date("2020-03-05") &
                                      Date <= as.Date("2020-03-07"),quarantine) 

直到我完成我拥有的34个城市为止,这一直重复着,这是一个很长的代码,但是我不知道如何优化它,因为每个城市都有不同的隔离日期,所以我不知道我是否可以循环它。

感谢您的帮助

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。