【发布时间】:2016-08-18 18:59:05
【问题描述】:
我有以下问题:我正在考虑一个包含 10 个不同向量的数据库,其中包含相同数量的投资组合的回报。我想将样本分成两个子集,一个包含市场表现积极时的回报,另一个包含市场表现不佳时的回报。出于这个原因,我有另一个包含市场回报的向量。
到目前为止我所做的是:
a) 我计算了市场获得正回报或负回报的天数:
n_bull <- sum(Mkt_Ret >= 0 )
n_bear <- sum(Mkt_Ret < 0 )
b) 我创建了一系列向量,其中包含每个投资组合的结果,即:
Portfolio_1_Bull <- rep(0, n_bull)
Portfolio_1_Bear <- rep(0, n_bear)
c) 我运行一个循环来用循环填充后者:
for(i in 1:length(Portfolio_1_EW_tot_ret)){
if(Mkt_Ret[i] >= 0){
Portfolio_1_Bull[i] = Portfolio_1_EW_tot_ret[i]
}
}
}
问题在于生成的向量 Portfolio_1_Bull 对整个投资组合的观察次数相同。有没有办法解决这个问题?
【问题讨论】:
-
Portfolio_1_EW_tot_ret[Mkt_Ret >= 0]?
标签: r loops if-statement vector