我有一个包含许多列的大型数据集,包括周号(即1、2、3)和工作日("星期一"、"星期二"等).有些星期可能只有一两个工作日的数据.我只需要 Select 或标记具有"完整"数据的周,即至少一个星期一、星期二、星期三、星期四和星期五.
我try 创建一个for循环,对于每个Week数字,它将测试该周是否至少包含列表"Weekday"中的每个元素中的一个.我制作了一个新的专栏,它将标记满足该要求的每一周(这里是第一周).然而,for循环并没有按预期工作,因为返回的所有标志都是"0",而我期望第一周的标志是"1".
week_num <- c(1,1,1,1,1,2,2,2,3,3,3,3)
day <- c("Monday", "Tuesday", "Thursday", "Wednesday", "Friday", "Friday", "Sunday", "Saturday", "Thursday", "Wednesday", "Tuesday", "Sunday")
reprex <- data.frame(cbind(week_num, day))
weekdays <- c("Monday", "Tuesday", "Wednesday", "Thursday", "Friday")
for (i in unique(reprex$week_num)){
reprex$flag = if_else(all(reprex$day %in% weekdays), 1, 0)
}
提前感谢你的帮助;我意识到我错过了一些显而易见的东西/可能有更好的方法来做到这一点.欢呼