2016-11-14 16 views
0

に関数の引数を入力します。私は(私の例ではすなわちリスト)可変個の引数を使用する可能性を導入し、この機能を改善したいR - 私は、次の機能を持たせて省略記号

ExampleFunction <- function(ListNumber1, ListNumber2) 
{ 
    OutputData <- list() 
    OutputData[[1]] <- rbind.fill(ListNumber1[[1]], ListNumber2[[1]]) 
    OutputData[[2]] <- rbind.fill(ListNumber1[[2]], ListNumber2[[2]]) 
    return(OutputData) 
} 

を。ここでこれを行う試みですが、私はrbind.fill()の引数を記入する方法は見当たりません。

ExampleFunctionUpgrade <- function(...) 
{ 
    Arguments <- list(...) 
    OutputData <- list() 
    VarNames <- paste0("List", seq_along(Arguments)) 
    for (i in 1:length(Arguments)) 
    { 
    assign(VarNames[i], Arguments[[i]]) 
    } 
    OutputData <- rbind.fill(???) 
    return(OutputData) 
} 

答えて

2

私は列一緒に拘束されることにあるlapplyコール内を反復しようとするだろう。

ExampleFunctionUpgrade <- function(...) 
{ 
    Arguments <- list(...) 
    OutputData <- list() 
    for(i in 1:length(Arguments[[1]])) { 
    OutputData[[i]] <- rbind.fill(lapply(Arguments, '[[', i)) 
    } 
    return(OutputData) 
} 

「forループ」が気に入らない場合は、2回のラットコールを使用できます。

関連する問題