Cómo utilizar bucles con índices de r

El uso de bucles en I es muy práctico, pero se puede escribir código más eficiente si bucle no sobre los valores, pero en los índices. Para ello, se reemplaza la sección media en la función con el siguiente código:

nclient lt; - longitud (cliente) IVA lt; - numérico (nclient) para (i en seq_along (cliente)) {IVA [i] lt; - interruptor (cliente [i], privado = 1,12, pública = 1,06, 1))}

Aquí hay algunas diferencias con el uso de valores del vector de bucle:

  • Se asigna la longitud del vector cliente a la variable nclient.

    Video: COMO HACER ONDAS NATURALES CON PLANCHA

  • Luego de hacer un vector numérico TINA eso es exactamente el tiempo que el vector cliente. Se llama preasignación de un vector.

    Video: COMO HACER ONDAS CON TENACILLA

  • A continuación, un bucle sobre los índices de cliente en lugar del propio vector mediante el uso de la función seq_along (). En la primera pasada a través del bucle, el primer valor de TINA está dispuesto a ser el resultado de cambiar() aplicada al primer valor de cliente. En el segundo paso, el segundo valor de TINA es el resultado de cambiar() aplicada al segundo valor en cliente y así.

    Video: Cómo hacer ondas con la plancha | facilisimo.com

Usted puede tener la tentación de sustituir seq_along (cliente) con el vector 1: nclient, pero eso sería una mala idea. Si el vector cliente tiene una longitud de 0, seq_along (cliente) crea un vector vacío y el código en el bucle no se ejecuta nunca. Si utiliza 1: nclient, R crea un vector c (1,0) y lazo sobre esos dos valores, que le da un resultado completamente equivocada.

Video: Que hacer para que tus RIZOS con pinzas/plancha TE DUREN mucho mas!

Cada vez que alargar un objeto en R, R tiene que copiar todo el objeto y moverlo a un nuevo lugar en la memoria. Esto tiene dos efectos:

  • En primer lugar, se ralentiza el código, ya que toda la copia lleva tiempo.

  • En segundo lugar, como R se mueve continuamente las cosas en la memoria, esta memoria se divide en una gran cantidad de pequeños espacios.

Se llama fragmentación, y hace que la comunicación entre R y la memoria menos suave. Esto se puede evitar la fragmentación, pre-distribuyen la memoria como en el ejemplo anterior.

Artículos Relacionados