我一直在使用CDC FluView数据集,通过以下代码获取:
library(cdcfluview)
library(ggplot2)
usflu <- get_flu_data("national", "ilinet", years=1998:2015)
我想做的是创建一个新的周变量,称为“week_new”,以便重新排序此数据集中的WEEK变量。我希望通过将第一周等于每年的第30周来重新排序它。例如,在1998年,我希望第1周对应于该年的第30周,之后每年都保持相同的比例。 我还尝试创建另一个名为“season”的新变量,它只是将每个周放入其相应的流感季节中,例如“1998-1999”代表从1998年的第30周到1999年的周数,以此类推。
我认为这涉及使用for循环和条件语句,但我不熟悉如何在R中使用它们。我刚开始学习编程,同时学习Java和R,目前只在Java中使用了循环。
以下是我迄今为止尝试的内容,我认为它应该是这样的:
wk_num <- 1
for(i in nrow(usflu)){
if(week == 31){
wk_num <- 1
wk_new[i] <- wk_num
wk_num <- wk_num+1
}
if(week < 53){
season[i] <- paste(Yr[i], '-', Yr[i] +1)
}
else{
}
非常感谢您的帮助,希望我的问题表达清楚。我希望了解未来如何重新排序,因为我认为这将是我在编写R代码时必不可少的重要工具。