[英]lapply with multiple function arguments
library(quantmod)
library(xts)
getSymbols("SY1.DE", from = "2019-4-10", to = "2019-4-19", auto.assign = TRUE)
getSymbols("PEP", from = "2019-4-9", to = "2019-4-19", auto.assign = TRUE)
calcreturn <- function(data, amount = 24) {
start <- as.numeric(data[,4][1])
end <- as.numeric(data[,4][nrow(data)])
difference <- end - start
winning <- difference * amount
return(winning)
}
allstocks <- list(SY1.DE, PEP)
amount <- list(24, 23)
lapply(allstocks, calcreturn)
Hello everbody! 大家好!
This is my code to calculate my returns for my stocks. 这是我计算我的股票回报的代码。 However, the amount of stocks i bought differ, so lapply does only work when the amount argument does not change. 但是,我购买的股票数量不同,所以只有当金额参数不变时,lapply才有效。 Is there a day to deal with changing arguments? 是否有一天可以应对不断变化的争论?
Thank you! 谢谢!
您可以修改您的lapply以运行索引,逐个配对金额:
lapply(1:length(allstocks), function(x) calcreturn(allstocks[[x]], amount[[x]]))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.