【发布时间】:2015-07-11 02:39:04
【问题描述】:
我正在尝试对我的模拟周期中包含的每个日期进行计算,并将每一天的结果保存在数据框中。
这就是我所做的:
SimulPeriod<- subset(HistoriqueNew, HistoriqueNew$Timestamp> DateIni)
p.and.l <- data.frame("13/3/2014",0)
names(p.and.l)<-c("DatePL", "PL")
p.and.l$DatePL<-as.Date(p.and.l$DatePL, "%d-%m/%Y")
for (p.and.l.date in SimulPeriod$Timestamp) {
## simulates closure of the position each day ##
CompteCourantUSD<-CompteCourantUSDIni+Achetes*SimulPeriod$Trade.Close.y
CompteCourantGBP<-CompteCourantGBPIni-Vendus*SimulPeriod$Trade.Close.x/100
ResultatJour <- CompteCourantUSD/SimulPeriod$Bid.Close+CompteCourantGBP
p.and.l$DatePL <- rbind(p.and.l$DatePL, p.and.l.date)
p.and.l$PL <- rbind(p.and.l$PL, ResultatJour))
}
我在控制台中收到以下消息:
Error: unexpected ')' in:
" p.and.l$DatePL <- rbind(p.and.l$DatePL, p.and.l.date)
p.and.l$PL <- rbind(p.and.l$PL, ResultatJour))"
}
Error: unexpected '}' in " }"
【问题讨论】:
-
奇怪的是,我看到变量 ResultatJour 是一个有 279 个值的向量,而不是一个值(如我所料,循环内的那一天。
-
看来,即使没有 cbinding,ResultatJour 向量也始终拥有我想要的每日结果系列...
-
在循环中增长对象是您可以在 R 中执行的最慢操作之一。您知道对象最终需要多大。将其预先分配到该大小。