2016-05-09 33 views
0

標準我充滿了XTS對象相當大名單看起來像這樣的XTS對象的列表:子集與滿足,使用R

tail(LIST[[1]])

  AMFD..Open AMFD..High AMFD..Low AMFD..Close AMFD..Volume AMFD..spcseccd 
1984-12-21   NA  3.625  3.625  3.625   6400   978 
1984-12-24   NA  3.500  3.500  3.500   4000   978 
1984-12-26   NA  3.625  3.625  3.625   2200   978 
1984-12-27   NA  3.500  3.500  3.500   6400   978 
1984-12-28   NA  3.750  3.750  3.750   8700   978 
1984-12-31   NA  3.750  3.750  3.750   4200   978 

tail(LIST[[2]])

  ANTQ.Open ANTQ.High ANTQ.Low ANTQ.Close ANTQ.Volume ANTQ.spcseccd 
1984-12-21  NA  3.25 2.750  3.000   800   976 
1984-12-24  NA  3.25 2.875  3.063   0   976 
1984-12-26  NA  3.25 2.750  3.000   0   976 
1984-12-27  NA  3.25 2.750  3.000   100   976 
1984-12-28  NA  3.25 2.750  3.000   700   976 
1984-12-31  NA  3.25 2.750  3.000  1800   976 

我想要根據第六列的最後一個數字對該列表進行分組: 例如:LIST[last(LIST[[x]][,6]) == 978]

我覺得這樣的事情可以工作,但它也返回一些XTS不符合標準:

SS <- sapply(as.list(1:10),function(x) { 
    LIST[which(last(LIST[[x]][,6]) == 978)] 
}) 

回答

0

多次試驗後,我找到了解決辦法如下:

LIST[sapply(LIST,"[[",6) %in% 978]

這將返回所有符合條件的xts對象(978)