dates <- NULL
date <- as.Date("01/01/2014","%d/%m/%Y")
dates <- data.frame(date=as.Date(character())
,cal_day_in_year_num = numeric()
,cal_week_id = numeric()
,cal_week_start_date = as.Date(character())
,cal_week_end_date = as.Date(character())
)
for (i in 1:365) {
dates[i,1] <- date + days(i-1) ## date
dates[i,2] <- yday(dates[i,1]) ## cal_day_in_year_num
dates[i,3] <- paste(year(dates[i,1]),sprintf("%02d",week(dates[i,1])),sep="") ## cal_week_id
dates[i,4] <- floor_date(dates[i,1], "week") ## cal_week_start_date
dates[i,5] <- ceiling_date(dates[i,1], "week") ## cal_week_end_date
}
View(dates)
對於給定的日期,我試圖用lubridate函數計算一週的相應的開始和結束日期更改lubridate功能星期一開始,而不是週日
我遇到的問題是那虹膜是在一週的第一天是星期天,因爲我需要它是星期一 - 有沒有人有辦法繞過這個?
雖然這可能不是官方的方式,但您可以簡單地添加+1? – Wave 2014-10-02 11:59:36
不幸的是,我不認爲加1到cal_week_start_date將工作,例如週日仍將被歸類爲錯誤 – 2014-10-02 12:13:37