Para Loop en R - Cómo funciona For Loop en R junto con ejemplos y sintaxis

Tabla de contenido:

Anonim

Introducción a For Loop

Se ejecuta una condición For Loop para permitir que un conjunto se repita hasta que se alcance la condición requerida. Los bucles son muy útiles en caso de que sea necesario iterar una gran variedad de elementos o enteros. For loop se puede usar sobre un marco de datos, un vector o cualquier objeto. En una situación en la que uno debe realizar una función similar repetidamente, el bucle for se usa para reducir el esfuerzo y el tiempo. Por ejemplo, si se requiere imprimir 100 números aleatorios de 1 a 1000, podemos usar la condición de bucle for para lograr esto fácilmente sin tener que usar la declaración de impresión 100 veces. En este tema, vamos a aprender sobre For Loop en R.

Para sintaxis de bucle

La sintaxis del bucle for en R es similar a la de python o cualquier otro lenguaje. A continuación se muestra la sintaxis de for loop en R.

Sintaxis:

for (val in sequence) (
Statement
)

En la sintaxis anterior, el vector se representa por secuencia y val es el valor del vector durante el bucle For.

Ahora veamos el proceso llevado a cabo por la condición de bucle con la ayuda del diagrama de flujo. Para cada elemento de la secuencia, el bucle se repite hasta que se alcanza la condición requerida. La condición se verifica y cuando se alcanza el último elemento, el compilador existe el bucle.

La estructura consiste en la inicialización que se muestra como "init", el rombo que es el cuadro de decisión y el cuadro rectangular que es el cuerpo del ciclo for. Al ejecutar un conjunto de comandos en condiciones de bucle for, el compilador no inicia el bucle hasta que se especifica la condición. Si no hay ninguna condición disponible, se ejecutará la siguiente instrucción después del bucle. Para cada elemento de la secuencia, la condición coincide. Hasta que la condición no coincida, el ciclo se repite una y otra vez. Una vez que se cumple el último elemento o la condición, el compilador existe en el bucle.

¿Cómo funciona Loop en R?

Antes de aprender cómo funciona For Loop en R, veamos qué es un loop o looping. El bucle o la iteración, que es básicamente una instrucción para repetir, tiene su origen desde hace mucho tiempo. En términos simples, está automatizando el proceso al agrupar ciertas funciones requeridas en un lote de partes. La mayor parte del lenguaje de programación moderno tiene una función de bucle incorporada que permite construir una función para la automatización. Las funciones de bucle se pueden dividir en dos partes, los bucles que se controlan y se pueden ejecutar la cantidad de veces deseada para la familia de bucles. Por otro lado, los bucles que se basan en un conjunto de condiciones pertenecen a la familia de bucles while.

En este artículo, investigaremos los diferentes métodos disponibles en R con el propósito de realizar un bucle. Veremos más a fondo diferentes ejemplos de bucles usando las funciones disponibles en la biblioteca R. Mientras trabaje en lenguaje R, los bucles son solo condiciones de bucle que necesitará, rara vez es posible que se necesiten otras condiciones de bucle, como while. Veamos cómo se usa el bucle For para iterar sobre valores numéricos.

# for printing number from 9 to 99 usinf for loop
> for(i in 9:99)(
+ print(i)
+ )
(1) 9
(1) 10
(1) 11
(1) 12
(1) 13
(1) 14
(1) 15
(1) 16
(1) 17
(1) 18
(1) 19
(1) 20
(1) 21

En el ejemplo anterior, la variable "i" es tomada por el ciclo e iterada hasta que se cumpla la condición. Imprimir la variable "i" dentro del bucle nos da valores que van del 9 al 99. Ahora, veamos otro ejemplo usando caracteres.

# for printing and looping items in example vector
> example <- c("cat", "dog", "bill", "base")
> for(i in 1:4)
+ (
+
+ print(example(i))
+ )
(1) "cat"
(1) "dog"
(1) "bill"
(1) "base"
# In case we don't want the entire loop to be executed
# loop can be stopped with the help of break condition
# In the below example the fourth element will not be printed.
> example <- c("cat", "dog", "bill", "base")
> for(i in 1:3)
+ (
+
+ print(example(i))
+ )
(1) "cat"
(1) "dog"
(1) "bill"

En el ejemplo anterior, estamos imprimiendo los elementos deseados del ejemplo. En el primer ejemplo, se invocan cuatro elementos en la secuencia, por lo tanto, todos los elementos se imprimieron cuando se ejecutó la declaración de impresión. En el segundo ejemplo, la secuencia se ha llamado hasta el tercer elemento, por lo tanto, se imprimen los primeros tres elementos.

Por otro lado, existe una condición llamada loop de repetición, que tiene una funcionalidad similar a la del loop. Sin embargo, la condición de repetición se usa para iterar sobre el código continuamente sin una verificación de condición.

El usuario necesita definir una condición dentro del ciclo y se debe usar una declaración de "interrupción" para salir del ciclo. Si no se usa la instrucción "break", se producirá un bucle infinito.

# illustrating repeat statement to print numbers from 5 to 15
> n <- 5
> repeat
+ (
+ print(n)
+ n = n+1
+ if (n == 16)(
+ break
+ )
+ )
(1) 5
(1) 6
(1) 7
(1) 8
(1) 9
(1) 10
(1) 11
(1) 12
(1) 13
(1) 14
(1) 15

En el ejemplo anterior, hemos especificado la condición n == 16 para que el compilador detenga el ciclo cuando se alcanza el n == 6.

Para ejemplos de bucles

Para introducir bucles For en R, tomemos un ejemplo de extracción de elementos o elementos del vector.

> states <- c('Oregon', 'Florida', 'Texas', 'Lowa', 'Nebraska', 'utah')
>
>
> for (str in states) (
+ print(paste("States in USA: ", str))
+ )
(1) "States in USA: Oregon"
(1) "States in USA: Florida"
(1) "States in USA: Texas"
(1) "States in USA: Lowa"
(1) "States in USA: Nebraska"
(1) "States in USA: utah"
# to illustrate the print operation outside the loop
> print("----prints outside the loop---")
(1) "----prints outside the loop---"

Paso 1

Se han definido estados nombrados por vectores que consisten en diferentes estados

> states <- c('Oregon', 'Florida', 'Texas', 'Lowa', 'Nebraska', 'Utah')

Paso 2

En el siguiente paso, el bucle for se usa para iterar sobre el vector de estados y mostrar el nombre individual de los estados.

> for (str in states) (
+ print(paste("States in USA: ", str))
+ )

Como la declaración de impresión se incluye dentro del ciclo, obtenemos los resultados deseados y se imprimen todos los nombres de los estados. En el siguiente paso, se usa otra declaración de impresión fuera del ciclo que prácticamente se ejecuta una vez que finaliza el ciclo for.

Ahora veamos la lógica detrás de cada iteración durante la ejecución del código.

  1. Durante la primera iteración, Estado = Oregon, quedan elementos restantes en el vector. Por lo tanto, la declaración de impresión es ejecutada por el compilador dentro del bucle.
  2. Durante la segunda iteración, Estado = Florida, quedan cuatro elementos más en el vector. Por lo tanto, la declaración de impresión es ejecutada por el compilador dentro del bucle.
  3. Durante la tercera iteración, Estado = Texas, quedan tres elementos más en el vector. Por lo tanto, la declaración de impresión es ejecutada por el compilador dentro del bucle.
  4. Durante la cuarta iteración, Estado = Lowa, quedan dos elementos más en el vector. Por lo tanto, la declaración de impresión es ejecutada por el compilador dentro del bucle.
  5. Durante la quinta iteración, Estado = Nebraska, queda otro elemento en el vector. Por lo tanto, la declaración de impresión es ejecutada por el compilador dentro del bucle.
  6. Durante la sexta iteración, Estado = Utah, podría haber elementos restantes en el vector. Por lo tanto, la declaración de impresión es ejecutada por el compilador dentro del bucle.
  7. Durante la séptima iteración, como no hay más elementos para asignar a la variable de estado, el compilador saldrá del bucle.

En el siguiente ejemplo, veamos la funcionalidad del bucle en el caso de los enteros.

> num <- c(1:5)
>
> for (i in num) (
+ print(i)
+ )
(1) 1
(1) 2
(1) 3
(1) 4
(1) 5

Paso 1

Se ha definido el vector llamado num que consta de enteros del 1 al 5

> num <- c(1:5)

Paso 2

En el siguiente paso, for loop se usa para iterar sobre el vector num y mostrar los enteros individuales.

> for (i in num) (
+ print(i)
+ )

Como la declaración de impresión se incluye dentro del ciclo, obtenemos los resultados deseados y se imprimen todos los enteros del número numérico.

Ahora veamos la lógica detrás de cada iteración durante la ejecución del código.

  1. Durante la primera iteración, "1" quedan elementos restantes en el vector. Por lo tanto, la declaración de impresión es ejecutada por el compilador dentro del bucle.
  2. Durante la segunda iteración, "2" quedan tres elementos más en el vector. Por lo tanto, la declaración de impresión es ejecutada por el compilador dentro del bucle.
  3. Durante la tercera iteración, "3" quedan dos elementos más en el vector. Por lo tanto, la declaración de impresión es ejecutada por el compilador dentro del bucle.
  4. Durante la cuarta iteración, "4" todavía queda un elemento más en el vector. Por lo tanto, la declaración de impresión es ejecutada por el compilador dentro del bucle.
  5. Durante la quinta iteración "5", puede haber elementos restantes en el vector. Por lo tanto, la declaración de impresión es ejecutada por el compilador dentro del bucle.
  6. Durante la sexta iteración, como no hay más elementos para asignar a la variable num, el compilador saldrá del bucle.

Conclusión - Para Loop en R

En este artículo, hemos visto cómo se puede ejecutar la condición de bucle usando R, R studio se ha utilizado para realizar las operaciones anteriores y se han mostrado los resultados. Además, hemos visto un ejemplo de extracción de elementos o elementos del vector y la evaluación de cada paso ha sido investigada en el artículo.

Artículos recomendados

Esta es una guía para For Loop en R. Aquí discutimos cómo funciona for loop en R con los ejemplos y sintaxis apropiados. También puede echar un vistazo a los siguientes artículos para obtener más información:

  1. Para Loop en Python
  2. C # para bucle
  3. Bucles en la programación Java
  4. Bucles en R
  5. Para bucle en C