假设我有一个从Yahoo获取数据的函数,名为Yahoo.Fetch,我在该函数上运行一个do.call,它将是:
do.call(merge.xts, lapply(list.of.tickers, Yahoo.Fetch))
Run Code Online (Sandbox Code Playgroud)
默认将不得不all=TRUE在merge.xts,所以我会怎么能够在do.call指定有all=FALSE?这只是一个例子,但我想知道如何在apply,do.call,lapply函数中更改和指定参数.
42-*_*42- 10
您可以将其作为命名值添加到现有列表中,c()并使用该列表返回另一个列表:
do.call(merge.xts, c( lapply(list.of.tickers, Yahoo.Fetch), all=FALSE ))
Run Code Online (Sandbox Code Playgroud)
或者使用匿名帮助函数包装参数:
do.call( function(x) merge.xts(x, all=FALSE),
lapply(list.of.tickers, Yahoo.Fetch))
Run Code Online (Sandbox Code Playgroud)