Comandos Condicionais
Na linguagem R existem três: if(), ifelse() e switch(). Os comandos condicionais são essenciais em programação de computadores (Tabela 12).
O comando if() é útil para tomar uma decisão com relação à continuidade de um processo interativo, onde se pode verificar se o erro caiu ao valor desejado. A sintaxe do comando if() é bastante simples:
Este mesmo comando pode ser escrito também conforme segue, mas com a ressalva que “else” deve seguir o fecha chaves (}), caso contrário o R avisa que ocorreu um erro inesperado, pois não reconhece a palavra “else” de forma isolada.
Como mostra a Figura 10, a expressão é testada e se for verdadeira, o código correspondente é executado, caso contrário outro código é executado e depois desviado para continuar a execução do script.
O comando ifelse(teste,”sim”,”não”) atribui “sim” se o teste for verdadeiro e “não”, caso contrário. Se ao invés de uma expressão, o objeto for um vetor, o comando ifelse() retorna um vetor de mesmo tamanho com o resultado da verificação (verdadeiro ou falso).
Apresenta-se dois exemplos de uso do comando condicional “if”, onde o segundo mostra o teste de duas condições unidas pelo operador “&”. Além disso, o comando ifelse() foi incluído neste script, conforme segue.
Observar que o comando ifelse() pode receber um vetor e retornar um vetor de resultados. No caso desse scritpt, testa-se o objeto a (linha 9) para verificar o resto da divisão por 2, cujo resultado é um vetor contendo as palavras par ou ímpar, conforme cada valor do objeto a.
O último comando condicional switch() permite desviar o código conforme o valor da chave, como se mostra na Figura 11. Assim, conforme o valor da chave, o programa executa o código associado à mesma, retornando ao código do script. Trata-se de um comando extremamente importante em programação, pois evita uma sequência de comandos condicionais if(), além de deixar o código mais claro e limpo.
Um exemplo bem simples do comando switch() é mostrado a seguir, onde a variável chave recebe o valor igual a 2 e o comando switch() desvia para execução da parte equivalente à essa chave. Vale lembrar que é possível inserir comandos entre {} e não apenas um único comando, como está exemplificado nesse script.
Próximo artigo
Os comandos de repetição (laço) serão tratados no seguinte artigo, na sequência. Trata-se de comandos dos mais importantes em programação de computadores.
Entretanto, a natureza orientada a objetos da linguagem R pode dispensar um comando de repetição e usar uma única operação vetorial.
Para conferir os artigos anteriores, acesse o nosso blog.