em , ,

R na Prática – parte 13 – Elementos De Programação Em Linguagem R

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).

Tabela 12: Comandos condicionais.

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:

script_1

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.

script_2

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.

Figura 10: Representação esquemática do comando condicional “if”.

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.

script_3

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.

Figura 11: Esquema mostrando o fluxo do comando switch().

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.

scipt_4

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.

Escrito por Jorge Kazuo Yamamoto

Prof. Dr. Jorge Kazuo Yamamoto, fundador da Geokrigagem, é geólogo, foi pesquisador do IPT e docente do Instituto de Geociências da USP, onde se aposentou como Professor Titular do Departamento de Geologia Sedimentar e Ambiental. Atualmente, atua como Professor Sênior do Departamento de Engenharia de Minas e de Petróleo – Escola Politécnica – USP. É responsável pela disciplina “Métodos geoestatísticos” na Pós-Graduação do IPT – Investigação do subsolo: Geotecnia e Meio Ambiente. Dedica-se ao ensino de geoestatística, com ênfase no desenvolvimento de algoritmos e pesquisa de novas aplicações, tais como: variância de interpolação, cálculo da variância global de depósitos minerais e correção do efeito de suavização da krigagem. Ultimamente, seu interesse está voltado para o ensino e divulgação da linguagem R.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

R na Prática – parte 12 – Elementos de Programação em Linguagem R

R na Prática – Parte 14 – Elementos de Programação em Linguagem R