En este apartado, nos adentraremos en la sentencia de control condicional if e if-else, que nos serán de gran utilidad a la hora de crear y diseñar nuestras funciones.
En las estructuras condicionales, se evalúa una condición y en función del resultado de la misma se realiza una opción u otra. Las estructuras condicionales pueden ser: simples, dobles o múltiples.
La sintaxis de la sentencia de control if, es la siguiente:
if(condición)
{
expresión 1
expresión 2
···
expresión N
}
La estructura anterior es muy limitada cuando se necesite elegir entre dos o más opciones, es por ello que disponemos de la sentencia de control if-else, cuya sintaxis es la siguiente:
if(condición)
{
expresión 1
expresión 2
···
expresión N
}
else
{
expresión 1
expresión 2
···
expresión N
}
Para la condición, podemos emplear los siguientes parámetros binarios:
- Menor que: Cuyo símbolo es: '<.'
- Mayor que: Cuyo símbolo es: '>'
- Igual que: Cuyo símbolo es: '='
- Menor o igual que: Cuyo símbolo es: '<='
- Mayor o igual que: Cuyo símbolo es: '>='
- Distinto que: Cuyo símbolo es: '!='
Por ejemplo, creamos una función que determine si un número cualquiera que seleccionemos, es mayor o igual que 5:
> f1 <- function(x){
+ if(x >= 5){
+ print("x es mayor que 5")}
+ else{
+ print("x es menor que 5")}
+ }
Probamos la función:
> f1(4)
[1] "x es menor que 5"
> f1(8)
[1] "x es mayor que 5"
Podemos comprobar, que la función da cómo salida lo que queríamos determinar.
Para utilizar más de una condición, se puede utilizar los operadores lógicos que se muestran a continuación:
- Operador lógico AND: Cuyo símbolo es '&&'
- Operador lógico OR: Cuyo símbolo es '||'
Por ejemplo, creamos una función que determine si un número cualquiera que seleccionemos, es igual que 5 o mayor que 8:
> f2 <- function(x){
+ if(x == 5 || x > 8){
+ print("x cumple con las condiciones determinadas")
+ }else{
+ print("x no cumple las condiciones determinadas")}
+ }
Comprobamos la función diseñada:
> f2(4)
[1] "x no cumple las condiciones determinadas"
> f2(9)
[1] "x cumple con las condiciones determinadas"
> f2(5)
[1] "x cumple con las condiciones determinadas"
La función funciona tal y cómo esperábamos.
R dispone en su ayuda un ilustrativo manual para que podamos aundar más la sentencia de control condicional:
> ?"if"
En conclusión, las sentencias de control condicionales mediante el comando if o if-else, son de gran utilidad para complemento del diseño de nuestras funciones, y lo que es más importante, R dispone de forma fácil su comprensión y empleo.
0 comentarios:
Publicar un comentario