Cómo recorrer los valores de r

Video: COMO RECORRER DA TAXA DE R$400,00

A veces, cuando la toma de decisiones utilizando R, se puede utilizar un solo valor para basar su elección en. Se podría aplicar ese código en cada valor que tiene a mano, pero tiene mucho más sentido para automatizar esta tarea.

construir una para lazo

Al igual que en muchos otros lenguajes de programación, se repite una acción para cada valor en un vector mediante el uso de una para lazo. Se construye una para bucle en R como sigue:

para (i en valores) {... hacer algo ...}

Esta para bucle consta de las siguientes partes:

  • la palabra clave para, seguido de paréntesis.

    Video: Movimiento Rectilíneo Uniforme Variado

  • Un identificador entre los paréntesis. En este ejemplo, usamos yo, pero que puede ser cualquier nombre de objeto que desee.

  • la palabra clave en, que sigue el identificador.

  • Un vector con los valores a bucle sobre. En este código de ejemplo, podemos utilizar el objeto valores, pero que de nuevo puede ser cualquier vector que tiene disponible.

  • Un bloque de código entre llaves que tiene que llevarse a cabo para cada valor en el objeto valores.

    Video: Constante de los gases ideales R

En el bloque de código, puede utilizar el identificador. Cada vez que los bucles de R a través del código, R asigna el siguiente valor en el vector con valores al identificador.

Video: CAÍDA LIBRE - Problema 1

Calcular los valores de una para lazo

Vamos a echar otro vistazo a la priceCalculator () función. Más temprano, te mostramos algunas de las posibilidades de adaptar esta función para que pueda aplicar un tipo de IVA diferente para clientes públicos, privados y extranjeros. No se puede utilizar cualquiera de estas opciones de una forma vectorizada, pero se puede utilizar una para bucle de modo que la función puede calcular el precio de varios clientes a la vez.

Utilizar los valores del vector

adaptar el priceCalculator () función como sigue:

priceCalculator lt; - función (hora, PPH = 40, cliente) {net.price lt; - horas * pph * IfElse (hora gt; 100, 0,9, 1) IVA lt; - numérico (0) para (i en el cliente) {IVA lt; - c (IVA, interruptor (i, privado = 1,12, pública = 1,06, 1))} tot.price lt; - net.price * VATround (tot.price)}

La primera y la última parte de la función no han cambiado, pero en la sección media, que hacer lo siguiente:

  1. Crear un vector numérico con longitud 0 y llamarlo TINA.

  2. Para cada valor en el cliente de vectores, se aplican cambiar() para seleccionar la cantidad correcta del IVA a pagar.

  3. En cada ronda a través del bucle, añadir el resultado de cambiar() en el extremo del vector TINA.

El resultado es un vector TINA que contiene, para cada cliente, el IVA correcta que debe ser aplicado. Esto se comprueba mediante la adición de, por ejemplo, una variable tipo a los clientes de tramas de datos que creó en la sección anterior de esta manera:

gt; clientes $ Tipo lt; - c (,, `extranjero` `exterior`, `privado` `público`) gt; priceCalculator (clientes $ horas, cliente clientes = $ tipo) [1] 1060 3960 5040 1600
Artículos Relacionados