8月時点で7勝1敗の時、9月から12月の成績は? slice

データ

年の選択(復習)

> (dplyr::filter(df,l==1) %>% dplyr::select(.,y))
y
1 1950
2 1954
3 1958
4 1961
5 1964
6 1972
7 1987
8 1991
9 1995
10 1996
11 2006
12 2017
13 2021

slice を利用してオリジナルのデータフレームから該当年を抽出

> as.data.frame(m) %>% dplyr::slice(as.vector(as.matrix( (dplyr::filter(df,l==1) %>% dplyr::select(.,y)) ))-1949)
V1 V2 V3 V4 V5 V6 V7 V8
1 0.02340930 0.0099706751 0.0040651570 0.0387506050 0.045657129 -5.804047e-02 0.008479310 0.0325112108
2 0.05118908 0.0026840491 0.0302103633 0.0489977339 0.032908740 6.850976e-04 0.057172203 -0.0340025594
3 0.04276066 -0.0206235247 0.0308520568 0.0318290039 0.014963191 2.608306e-02 0.043103380 0.0118669424
4 0.06315605 0.0268695375 0.0255359241 0.0038426069 0.019139489 -2.884614e-02 0.032797077 0.0196224979
5 0.02692621 0.0098650310 0.0151670945 0.0060774371 0.011452354 1.642403e-02 0.018239662 -0.0162298389
6 0.01812133 0.0253030397 0.0059115792 0.0043843378 0.017275017 -2.182051e-02 0.002333396 0.0344538321
7 0.13176690 0.0369236189 0.0263898652 -0.0114502121 0.006034197 4.791449e-02 0.048223697 0.0349588397
8 0.04151775 0.0672811749 0.0222028328 0.0003197991 0.038604975 -4.789263e-02 0.044859343 0.0196487843
9 0.02427771 0.0360741498 0.0273291934 0.0279603588 0.036311712 2.127854e-02 0.031776040 -0.0003202381
10 0.03261739 0.0069337016 0.0079165671 0.0134314222 0.022853406 2.256710e-03 -0.045748017 0.0188139351
11 0.02546677 0.0004531576 0.0110958105 0.0121556527 -0.030916916 8.659623e-05 0.005085879 0.0212741930
12 0.01788436 0.0371981601 -0.0003891971 0.0090912087 0.011576251 4.813775e-03 0.019348826 0.0005464330
13 -0.01113666 0.0260914514 0.0424386325 0.0524253213 0.005486489 2.221401e-02 0.022748055 0.0289904163
V9 V10 V11 V12 y
1 0.055917535 0.004113110 -0.001024117 0.047155305 1950
2 0.083137814 -0.019498638 0.080808144 0.050817696 1954
3 0.048376984 0.025369576 0.022404012 0.052019798 1958
4 -0.019685574 0.028323092 0.039347084 0.003224944 1961
5 0.028718049 0.008077940 -0.005185046 0.003909050 1964
6 -0.004860861 0.009317042 0.045617458 0.011828277 1972
7 -0.024166165 -0.217630416 -0.085348865 0.072861480 1987
8 -0.019143738 0.011834237 -0.043903709 0.111587855 1991
9 0.040097472 -0.004979335 0.041049003 0.017443874 1995
10 0.054203328 0.026101003 0.073376152 -0.021505415 1996
11 0.024566299 0.031508003 0.016466657 0.012615783 2006
12 0.019302979 0.022188135 0.028082628 0.009831631 2017
13 -0.047569169 0.069143836 -0.008333706 0.043612913 2021

最終版

monthlyReturn(GSPC)["1950::2023"] %>% matrix(.,nrow=12) %>% t() -> m
l <- c(); y <- c(); p <- c()
for(i in seq(1,74,1)){m[i,18]->n; y <<- c(y,i+1949); l <<- c(l,length(n[n<0])) ;p <<- c(p,as.vector(yearlyReturn(GSPC)[as.character(i+1949)]))};as.data.frame(cbind(y,l,p) ) -> df
rownames(df) <- seq(1,74,1)
dplyr::slice(as.data.frame(m),as.numeric(dplyr::filter(df,l==1) %>% rownames()))

この記事が気に入ったらサポートをしてみませんか?