R Subset XTS weekdays

后端 未结 2 1148
予麋鹿
予麋鹿 2021-02-05 16:23

How do I subset an xts object to only include weekdays (Mon-Fri, with Saturday and Sunday excluded)?

2条回答
  •  感情败类
    2021-02-05 16:51

    Here's what I'd do:

    library(xts)
    data(sample_matrix)
    sample.xts <- as.xts(sample_matrix, descr='my new xts object')
    x <-  sample.xts['2007']  
    x[!weekdays(index(x)) %in% c("Saturday", "Sunday")]
    

    EDIT: Joshua Ulrich in comments points out a better solution using .indexwday(), one of a family of built-in accessor functions for extracting pieces of the index of xts class objects. Also, like Dirk Eddelbuettel's solution, the following should be locale-independent:

    x[.indexwday(x) %in% 1:5]
    

提交回复
热议问题