複数の引数 (1)
オプション引数の例で見たように、関数には複数の引数を持たせることができます。これにより、関数の柔軟性が高まります。実際に試してみましょう。
pow <- function(x, power = 2) {
x^power
}
pow(2)
[1] 4
pow(2, power = 3)
[1] 8
square() 関数の代わりに、どんな冪にも対応できるバージョンになりました。
power 引数は省略可能で既定値は 2 ですが、ユーザーが簡単に変更できます。これは複数の引数を追加する方法の一例でもあります。引数がカンマで区切られ、既定値が等号で設定されている点に注目してください。
percent_to_decimal() にさらに機能を追加して、指定した桁数に丸められるようにしましょう。
この演習はコースの一部です
金融のための中級R
演習の手順
- 改良版の
percent_to_decimal()関数の空所を埋めて、次を行ってください。- 既定値が
2の、digitsという名前の2つ目のオプション引数を追加します。 - 関数本体で
percentを 100 で割り、その結果をdecimalに代入します。 decimalにround関数を適用し、小数点以下の桁数を指定するために第2引数にdigitsを設定します。
- 既定値が
- この関数は長さが 1 より大きいベクトルにも対応します。
percentsはあらかじめ定義されています。 percent_to_decimal()をpercentsに対して呼び出してください。オプション引数は指定しないでください。- もう一度
percent_to_decimal()をpercentsに対して呼び出し、digits = 4を指定してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Percent to decimal function
percent_to_decimal <- function(percent, ___ = ___) {
___ <- percent / 100
___(decimal, ___)
}
# percents
percents <- c(25.88, 9.045, 6.23)
# percent_to_decimal() with default digits
___
# percent_to_decimal() with digits = 4
___