Múltiplos argumentos (1)
Como você viu no exemplo de argumentos opcionais, funções podem ter vários argumentos. Isso ajuda a aumentar a flexibilidade da sua função. Vamos ver isso em ação.
pow <- function(x, power = 2) {
x^power
}
pow(2)
[1] 4
pow(2, power = 3)
[1] 8
Em vez de uma função square(), agora temos uma versão que funciona com qualquer potência.
O argumento power é opcional e tem valor padrão 2, mas o usuário pode mudar isso facilmente. Este também é um exemplo de como adicionar vários argumentos. Perceba que os argumentos são separados por vírgula e o valor padrão é definido usando um sinal de igual.
Vamos adicionar mais funcionalidade a percent_to_decimal() para permitir arredondar a porcentagem para um certo número de casas decimais.
Este exercício faz parte do curso
R Intermediário para Finanças
Instruções do exercício
- Preencha as lacunas na versão melhorada de
percent_to_decimal()para fazer o seguinte:- Adicione um segundo argumento opcional chamado
digits, com valor padrão2. - No corpo da função, divida
percentpor 100 e atribua o resultado adecimal. - Use a função
roundemdecimale defina o segundo argumento comodigitspara especificar o número de casas decimais.
- Adicione um segundo argumento opcional chamado
- Sua função também funcionará com vetores de comprimento >1.
percentsjá foi definido para você. - Chame
percent_to_decimal()empercents. Não especifique argumentos opcionais. - Chame
percent_to_decimal()empercentsnovamente. Especifiquedigits = 4.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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
___