删除 R Data.frame 的某些月份的值?

Remove values of certain months of an R Data.frame?

我有以下 data.frame 我想删除某些月份的 values 替换为 empty cell甚至不适用)- 我尝试了一些不同的方法但没有成功。任何帮助将不胜感激。

library(lubridate)
library(tidyverse)

set.seed(123)

DF <- data.frame(Date = seq(as.Date("2001-01-01"), to = as.Date("2005-12-31"), by = "day"),
                 Value = runif(1826,1,5)) %>% 
                 mutate(Year = year(Date), Month = month(Date), Day = day(Date)) %>% 
  mutate(Month %in% c(1,2,11,12), Value) <- ""

这样就可以了。请注意,由于您将“ ”分配给了数字列,它不再是数字列。

DF <- data.frame(Date = seq(as.Date("2001-01-01"), to = as.Date("2005-12-31"), by = "day"),
                 Value = runif(1826,1,5)) 

DF %>%
mutate(Value=ifelse(month(Date)%in% c(1,2,11,12),'',Value))

输出样本;

   Date       Value             
   <date>     <chr>             
 1 2001-03-10 "4.17736928444356"
 2 2005-05-28 "3.43532561417669"
 3 2004-08-10 "2.02042273338884"
 4 2004-11-04 ""                
 5 2005-04-23 "2.43464119918644"
 6 2003-07-01 "1.20879446342587"
 7 2005-08-13 "1.14129407145083"
 8 2002-01-14 ""                
 9 2001-02-19 ""                
10 2002-07-28 "2.69385460391641"