#--------Get Sunday's from 2018-01-01 till today---------------------
d = seq(as.Date("2018-01-01"),Sys.Date(),by='day')
sundayList = d[weekdays(d)=='Sunday']
HolidayList = as.data.frame(sundayList)
colnames(HolidayList)[1] = "Holidays"
#---------Get Alternate saturdays 2nd and 4th------------------------
d = seq(as.Date("2018-01-01"),Sys.Date(),by='day')
saturdayList = d[weekdays(d)=='Saturday']
altSaturdayList = lapply(split(saturdayList, format(saturdayList, "%Y-%m")), function(x)
na.omit(x[c(2,4)]))
altSaturdayList = as.data.frame(altSaturdayList)
altSaturdayList = gather(altSaturdayList)
altSaturdayList = subset(altSaturdayList,select = c(colnames(altSaturdayList)[2]))
До сих пор это работает, как и ожидалось, но я не могу связать два столбца так, чтобы иметь воскресенья и 2-й и 4-й субботы в одном кадре данных
HolidayList$Holidays = rbind(HolidayList$Holidays,altSaturdayList$value)
Любые комментарии кулучшить существующий код поможет.
Я получаю следующее сообщение об ошибке.
> HolidayList$Holidays = rbind(HolidayList$Holidays,altSaturdayList$value)
Error in `$<-.data.frame`(`*tmp*`, Holidays, value = c(17538, 17544, 17545, :
replacement has 2 rows, data has 63
In addition: Warning message:
In rbind(HolidayList$Holidays, altSaturdayList$value) :
number of columns of result is not a multiple of vector length (arg 2)