2

R 関数を作成およびデバッグする能力を高速化するための単純な関数を探しています。次のコード ブロックを検討してください。

# Part A:
myfun = function(a, b = 5, out = "hello"){
    if(a>b) print(out)
    return(a-b)
    }

# Part B:
b = 5
out = "hello"

# Part C:
do.args = function(f){
    #intialize the arguments of myfun in the parent environment
    ???
    }

この関数myfunは、より大きな問題の些細な例です。多くの引数を持つ複雑な関数を使用することがよくあります。このような関数を効率的に記述してデバッグするには、関数の引数を初期化し、関数を 1 行ずつ「ステップ スルー」すると便利です。上記のパート B のように、引数を初期化するのは、多くの引数がある場合、やや面倒です。パート C のように、myfun引数として文字列のみを受け取り、実行と同じ効果を生み出す関数を使用することをお勧めします。現在の環境ではパート B。

4

2 に答える 2