R 入れ子(Nested)関数
ネストされた関数
ネストされた関数を作成するには、次の2つの方法があります。
- 別の関数内で関数を呼び出します。
- 関数内に関数を記述します。
例
別の関数内で関数を呼び出します。
Nested_function <- function(x, y) {
a <- x + y
return(a)
}
Nested_function(Nested_function(2,2), Nested_function(3,3))
例の説明
この関数はxにyを追加するように指示します。
最初の入力Nested_function(2,2) は、メイン関数の"x"です。
2番目の入力 Nested_function(3,3) は、メイン関数の"y"です。
したがって、出力は(2+2) + (3+3) =10。
例
関数内に関数を書く:
Outer_func <- function(x) {
Inner_func <- function(y) {
a <- x + y
return(a)
}
return (Inner_func)
}
output <- Outer_func(3) # To call the Outer_func
output(5)
例の説明
Inner_funcはOuter_func内で定義(ネスト)されているため、関数を直接呼び出すことはできません。
2番目のステップとしてInner_funcを呼び出すには、最初にOuter_funcを呼び出す必要があります。
outputという新しい変数を作成し、それに値を与える必要があります。ここでは3です。
次に、「y」の目的の値(この場合は5)で出力を出力します。
したがって、出力は8(3+5)。
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。