Condicionais em linguagem R: if / else if / else

Condicionais em linguagem R: if / else if / else

Usamos uma estrutura de desvio condicional para tomar uma decisão de acordo com o resultado de uma condição (teste lógico), e então executar um bloco de códigos que depende do resultado desse teste.

As estruturas de decisão podem ser Simples, Composta ou Encadeada, e são criadas com o emprego da declaração if

Desvio Condicional Simples – if

O desvio condicional simples permite executar um bloco de código caso o resultado do teste seja verdadeiro, ignorando um resultado falso.

x <- 30
if (x == 30) {
  res <- "Número igual a 30"
  print(res)
}

Desvio Condicional composto: if / else

O desvio condicional composto permite criar dois blocos de código após realizar o teste lógico:

Se o teste lógico retornar verdadeiro, as instruções contidas no bloco if serão executadas (como no condicional simples)
Porém, se o teste lógico retornar falso, as instruções contidas em um bloco chamado else é que serão executadas.

x <- 30
if (x == 30) {
  res <- "Número igual a 30"
} else {
    res <- "Número diferente de 30"
  }
print(res)

Note que a instrução else deve estar localizada na mesma linha da chave de fechamento da instrução if, ou o script não funcionará.

Para declarações compostas com apenas uma instrução a executar, é possível abreviar o código da seguinte maneira:

x <- 30
res <- if (x == 30) "Igual" else "Diferente"
print(res)

Desvio Condicional Encadeado: if / else if / else

Em muitas situações é preciso verificar condições de teste sucessivas, onde uma ação será executada se um conjunto anterior de ações for satisfeito.

Podemos usar nestes casos uma estrutura denominada Desvio Condicional Encadeado, que basicamente é o encadeamento (combinação) de estruturas de decisão compostas em um script.

x <- 30
if (x == 30) {
  res <- "Número igual a 30"
} else if (x > 30{
    res <- "Número maior que 30"
  } else {
      res <- "Número menor que 30"
    }
print(res)

Note que nesse caso combinamos as declarações else e if em uma mesma linha, para criar o encadeamento de condicionais.

Próximo: Estruturas de Repetição While e For em linguagem R

Sobre Fábio dos Reis (1324 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 25 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Unix, Linux e Open Source em geral, adora Eletrônica e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.
Contato: Website

Escreva um comentário

Seu e-mail não será divulgado


*