首页 > 解决方案 > 在日期数据中检测英国假期

问题描述

我在 R 工作,我有 20 年的数据,我想检查每个给定日期是否是英国假期,创建一个分类变量(真/假)。

我使用了这段代码:

library(timeDate)
c <- timeDate(data$Date)    
b <- isHoliday(c, holidays = GBBankHoliday(), wday = 1:6)

或者

b <- isHoliday(c, holidays = HolidayLONDON(), wday = 1:6)

但它只检测周日(不是圣诞节或其他假期)。有谁知道该怎么做?

标签: r

解决方案


我在我的数据中创建了一个新的二进制变量,称为“假期”。如果我的数据日期是英国假期,则值为 1 (TRUE),如果日期不是假期,则值为 2 (FALSE)。代码非常简单:

library(timeDate)
data$holidays<-as.factor(data$Date %in% (as.Date(holidayLONDON(1990:2010))))

推荐阅读