Argumente multiple (1)
Așa cum ai văzut în exemplul cu argumente opționale, funcțiile pot avea mai multe argumente. Acestea contribuie la creșterea flexibilității funcției tale. Să vedem cum funcționează în practică.
pow <- function(x, power = 2) {
x^power
}
pow(2)
[1] 4
pow(2, power = 3)
[1] 8
În locul unei funcții square(), avem acum o versiune care funcționează cu orice putere.
Argumentul power este opțional și are valoarea implicită 2, dar utilizatorul îl poate modifica cu ușurință. Este totodată un exemplu de cum poți adăuga mai multe argumente. Observă că argumentele sunt separate printr-o virgulă, iar valoarea implicită se setează cu semnul egal.
Hai să adăugăm mai multă funcționalitate la percent_to_decimal(), astfel încât să poți rotunji procentajul la un anumit număr de zecimale.
Acest exercițiu face parte din cursul
R intermediar pentru finanțe
Instrucțiuni pentru exercițiu
- Completează spațiile libere din funcția îmbunătățită
percent_to_decimal()pentru a realiza următoarele:- Adaugă un al doilea argument opțional numit
digits, cu valoarea implicită2. - În corpul funcției, împarte
percentla 100 și atribuie rezultatul variabileidecimal. - Aplică funcția
roundpedecimalși setează al doilea argument ladigitspentru a specifica numărul de zecimale.
- Adaugă un al doilea argument opțional numit
- Funcția ta va funcționa și pe vectori cu lungimea >1. Variabila
percentsa fost deja definită pentru tine. - Apelează
percent_to_decimal()pepercents. Nu specifica niciun argument opțional. - Apelează din nou
percent_to_decimal()pepercents. De data aceasta, specificădigits = 4.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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
___