0

以下のコードを提供してくれた akrun に感謝します。それは私の問題に対する解決策の一部を提供します。

library(xts)
data(sample_matrix)
sample.xts <- as.xts(sample_matrix, descr='my new xts object')

start_date <- '2007-01-02'
end_date <- '2007-01-05' 
col_names <- c('Open', 'High')

以下のコードはstart_dateend_date事前に指定された範囲内の値を取得します。

sample.xts[paste(start_date, end_date, sep="/"), col_names]

私が本当に必要としているのは、たとえばstart_date + 5との間の値です。end_date + 5

 sample.xts[paste(as.Date(start_date) + 5, as.Date(end_date) + 5, sep="/"), col_names]

問題は、取引日があるため、週末だけでなく休日なども除外されることです。たとえば、+5 の場合、他の 2 つが週末であるため、3 つの値しか得られない場合があります。したがって、上記の任意の暦日を の形式にしたいと思いますas.Date。次の 5 暦日ではなく、そのテーブルから次の 5 つの値が必要です。

4

1 に答える 1

0

これがあなたが望むものだと思います:

first(sample.xts[paste0(start_date,'/')], 5)
于 2015-10-20T15:48:56.087 に答える