Cómo utilizar si las declaraciones en r

Si declaraciones pueden ser muy útiles en I, como lo son en cualquier lenguaje de programación ,. A menudo, usted quiere tomar decisiones y actuar depende de un cierto valor.

La definición de una elección en su código es bastante simple: Si esta condición es cierta, entonces llevar a cabo una tarea determinada. Muchos lenguajes de programación permiten hacer eso exactamente con estas palabras: Si . . . entonces. R hace que sea aún más fácil: Puede eliminar la palabra entonces y especificar su elección en una Si declaración.

Un Si declaración en I consta de tres elementos:

  • la palabra clave Si

  • Un único valor lógico entre paréntesis (o una expresión que conduce a un único valor lógico)

  • Un bloque de código entre llaves que tiene que ser ejecutado cuando el valor lógico es CIERTO

    Video: Planilla Electrónica - PLAME

Aquí es una función muy pequeño, priceCalculator (), que calcula el precio que se cobra a un cliente basado en las horas de trabajo que hizo para ese cliente. La función debe tener el número de horas (horas) Y el precio por hora (ppc) Como entrada. los priceCalculator () función podría ser algo como esto:

priceCalculator lt; - función (hora, PPH = 40) {net.price lt; - hora * pphround (net.price)}

Esto es lo que hace este código:

  • Con el función palabra clave, se define la función.

  • Todo entre las llaves es el cuerpo de la función (véase el capítulo 8).

  • Entre los paréntesis, se especifica los argumentos horas (Sin un valor predeterminado) y ppc (Con un valor por defecto de $ 40 por hora).

  • Se calcula el precio neto de multiplicar horas por ppc.

    Video: 168. Declaraciones que se tienen COMO NO PRESENTADAS Iva R Común

  • El resultado de la última instrucción en el cuerpo de la función es el valor devuelto. En este caso, este es el precio total redondeado al dólar.

Que podría caer el argumento ppc y sólo multiplica por hora 40. Pero eso significaría que si, por ejemplo, su colega utiliza una tasa horaria diferente, que tendría que cambiar el valor en el cuerpo de la función con el fin de ser capaz de utilizarlo. Es una buena práctica de codificación a utilizar argumentos con valores por defecto para cualquier valor que puede cambiar. Si lo hace, hace que una función más flexible y utilizable.

Ahora imagine que tiene algunos grandes clientes que le dan mucho trabajo. Para mantenerlos contentos, decide darles una reducción del 10 por ciento sobre el precio por hora para los pedidos que implican más de 100 horas de trabajo. Por lo tanto, si el número de horas trabajadas es mayor que 100, se calcula el nuevo precio multiplicando el precio por 0,9.

Puede escribir que casi literalmente en su código como el siguiente:

priceCalculator lt; - función (hora, PPH = 40) {net.price lt; - horas * pphif (hora gt; 100) {net.price lt; - net.price * 0,9} ronda (net.price)}

Copia este código en un archivo de script, y enviarlo a la consola para que esté disponible para su uso. Si intenta salir de esta función, se puede ver que la reducción se da sólo cuando el número de horas es mayor que 100:

gt; priceCalculator (hora = 55) [1] 2200gt; priceCalculator (hora = 110) [1] 3960

Esta construcción es la forma más general, se puede especificar una Si declaración. Pero si usted tiene sólo una corta línea de código en el bloque de código, usted no tiene que poner los frenos a su alrededor. Puede cambiar la completa Si declaración en la función con la siguiente línea:

si (hora gt; 100) net.price lt; - net.price * 0,9

La forma más habitual de conseguir ayuda en una función llamada, por ejemplo, fun.name (?fun.name) No funciona para Si. Para acceder a la ayuda integrada para Si, hay que citar el nombre de la función. Puede utilizar comillas simples, comillas dobles, o invertidas. Cada una de las siguientes afirmaciones le lleva a la página de ayuda para Si:

?`Si`?"Si"? `If`
Artículos Relacionados