1

2001 年の日曜日、月曜日、火曜日、...、土曜日の数を数えるのが好きです。次の日付 {1 月 1 日、4 月 5 日、4 月 13 日、12 月 25 日、および 12 月 26 日} を祝日とし、それらを日曜日と見なします。 . Rでどうやってそれを行うことができますか? - ありがとう

4

2 に答える 2

5

リトアニア語版は次のとおりです。

dates <- as.Date("2001-01-01") + 0:364
wd <- weekdays(dates)
idx <- which(dates %in% as.Date(c("2001-01-01", "2001-04-05", 
             "2001-04-13", "2001-12-25", "2001-12-26")))
wd[idx] <- "sekmadienis"
table(wd)
wd
   antradienis ketvirtadienis   penktadienis    pirmadienis    sekmadienis    šeštadienis   trečiadienis 
            51             51             51             52             57             52             51 
于 2012-07-25T15:15:12.543 に答える
3

次のことを試してください。

# get all the dates you need
dates <- seq(from=as.Date("2001-01-01"), to=as.Date("2001-12-31"), by="day")

# makes sure the dates are in POSIXlt format
dates <- strptime(dates, "%Y-%m-%d")

# get rid of the public holidays
pub <- strptime(c(as.Date("2001-01-01"), 
                 as.Date("2001-04-05"), 
                 as.Date("2001-04-13"), 
                 as.Date("2001-12-25"), 
                 as.Date("2001-12-26")), "%Y-%m-%d")
dates <- dates[which(!dates%in%pub)]


# To see the day of the week
weekdays <- dates$wday

# Now, count the number of Mondays for example:
length(which(weekdays == 1))

詳細については、DateTimeClasses のドキュメントを参照してください。日曜日のカウントに 5 を追加することを忘れないでください。

于 2012-07-25T15:24:48.877 に答える