R Se... Senão
Condições e Declarações Se
R suporta as condições lógicas usuais da matemática:
Operator | Name | Example | Try it |
---|---|---|---|
== | Equal | x == y | |
!= | Not equal | x != y | |
> | Greater than | x > y | |
< | Less than | x < y | |
>= | Greater than or equal to | x >= y | |
<= | Less than or equal to | x <= y |
Essas condições podem ser usadas de várias maneiras, mais comumente em "instruções if" e loops.
Uma "instrução if" é escrita com a palavra- if
chave e é usada para especificar um bloco de código a ser executado se uma condição for TRUE
:
Exemplo
a <- 33
b <- 200
if (b > a) {
print("b is greater than a")
}
Neste exemplo, usamos duas variáveis, a e b , que são usadas como parte da instrução if para testar se b é maior que a . Como a é 33 , e b é 200 , sabemos que 200 é maior que 33, e então imprimimos na tela que "b é maior que a".
R usa chaves {} para definir o escopo no código.
Senão
A else if
palavra-chave é a maneira de R dizer "se as condições anteriores não forem verdadeiras, tente esta condição":
Exemplo
a <- 33
b <- 33
if (b > a) {
print("b is greater than a")
} else if (a == b) {
print ("a and b are equal")
}
Neste exemplo a
é igual a b
, então a primeira condição não é verdadeira, mas a else if
condição é verdadeira, então imprimimos na tela que "a e b são iguais".
Você pode usar quantas else if
declarações quiser no R.
Se mais
A palavra- else
chave captura qualquer coisa que não seja capturada pelas condições anteriores:
Exemplo
a <- 200
b <- 33
if (b > a) {
print("b is greater than a")
} else if (a == b) {
print("a and b are equal")
} else {
print("a is greater than b")
}
Neste exemplo, a é maior que b , então a primeira condição não é verdadeira, também a condição else if não é verdadeira, então vamos para a condição else e imprimimos na tela que "a é maior que b".
Você também pode usar else
sem
else if
:
Exemplo
a <- 200
b <- 33
if (b > a) {
print("b is greater than a")
} else {
print("b is not greater than a")
}
Instruções If aninhadas
Você também pode ter if
instruções dentro
if
de instruções, isso é chamado de instruções aninhadas
if
.
Exemplo
x <- 41
if (x > 10) {
print("Above ten")
if (x >
20) {
print("and also above 20!")
} else {
print("but not above 20.")
}
} else {
print("below
10.")
}
E
O símbolo & (e) é um operador lógico e é usado para combinar instruções condicionais:
Exemplo
Teste se a é maior que b, E se c é maior que a:
a <- 200
b <- 33
c <- 500
if (a > b & c > a){
print("Both conditions are true")
}
OU
O |
símbolo (ou) é um operador lógico e é usado para combinar declarações condicionais:
Exemplo
Teste se a é maior que b, ou se c é maior que a:
a <- 200
b <- 33
c <- 500
if (a > b | a > c){
print("At
least one of the conditions is true")
}