Více argumentů (1)
Jak jsi viděl/a v příkladu s volitelnými argumenty, funkce mohou mít více argumentů. Díky nim lze funkci snadno rozšířit a přizpůsobit. Podívejme se na to v praxi.
pow <- function(x, power = 2) {
x^power
}
pow(2)
[1] 4
pow(2, power = 3)
[1] 8
Místo funkce square() teď máme verzi, která pracuje s libovolnou mocninou.
Argument power je volitelný a má výchozí hodnotu 2, ale uživatel ho může snadno změnit. Je to také ukázka toho, jak lze přidat více argumentů. Všimni si, že argumenty jsou odděleny čárkou a výchozí hodnota se nastavuje pomocí znaménka rovnosti.
Pojďme přidat funkci percent_to_decimal() další možnost — zaokrouhlení výsledku na zadaný počet desetinných míst.
Toto cvičení je součástí kurzu
Intermediate R for Finance
Pokyny k cvičení
- Doplň prázdná místa ve vylepšené funkci
percent_to_decimal()tak, aby splňovala následující:- Přidej druhý volitelný argument s názvem
digits, jehož výchozí hodnota bude2. - V těle funkce vyděl
percentčíslem 100 a výsledek přiřaď proměnnédecimal. - Použij funkci
roundnadecimala jako druhý argument nastavdigits, aby určoval počet desetinných míst.
- Přidej druhý volitelný argument s názvem
- Tvoje funkce bude fungovat i na vektorech s délkou větší než 1. Proměnná
percentsje už pro tebe definovaná. - Zavolej
percent_to_decimal()napercentsbez zadání volitelných argumentů. - Zavolej
percent_to_decimal()napercentsznovu, tentokrát s argumentemdigits = 4.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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
___