# Ejemplo de bucle for que imprime los cuadrados de los números del 1 al 5
for (i in 1:5) {
<- i^2
cuadrado print(cuadrado)
}
[1] 1
[1] 4
[1] 9
[1] 16
[1] 25
Un bucle es una instrucción que se repite hasta que se alcanza una condición específica. Puede haber una situación en la que necesite ejecutar un bloque de código varias veces. En R un bucle se puede utilizar para iterar sobre una lista, data frame, vector, matriz o cualquier otro objeto.
En programación, un bucle (o loop) es una estructura de control que permite ejecutar un bloque de código repetidamente mientras se cumple una condición específica. En R, como en muchos otros lenguajes de programación, hay varios tipos de bucles. Los bucles más comunes son for
y while
.
En R, hay varios tipos de bucles que se pueden utilizar para repetir un bloque de código bajo diferentes condiciones. Los bucles más comunes son for
, while
, y repeat
.
for
El bucle for
se utiliza para iterar sobre una secuencia de elementos, como un vector, y ejecutar un bloque de código para cada elemento.
# Ejemplo de bucle for que imprime los cuadrados de los números del 1 al 5
for (i in 1:5) {
<- i^2
cuadrado print(cuadrado)
}
[1] 1
[1] 4
[1] 9
[1] 16
[1] 25
while
El bucle while
se utiliza para repetir un bloque de código mientras se cumple una condición específica.
# Ejemplo de bucle while que imprime los cuadrados de los números hasta que se alcanza un cierto límite
<- 1
i <- 10
limite while (i^2 <= limite) {
<- i^2
cuadrado print(cuadrado)
<- i + 1
i }
[1] 1
[1] 4
[1] 9
repeat
con break
El bucle repeat
se utiliza para ejecutar un bloque de código de forma indefinida hasta que se utiliza la instrucción break
para salir del bucle.
# Ejemplo de bucle repeat que imprime los cuadrados de los números hasta que se alcanza un cierto límite
<- 1
i <- 10
limite repeat {
<- i^2
cuadrado print(cuadrado)
<- i + 1
i if (cuadrado > limite) {
break
} }
[1] 1
[1] 4
[1] 9
[1] 16
foreach
El paquete foreach
proporciona una función homónima que facilita la iteración sobre elementos en paralelo o en series.
# Ejemplo de bucle foreach que imprime los cuadrados de los números del 1 al 5
library(foreach)
Warning: package 'foreach' was built under R version 4.3.1
foreach(i = 1:5) %do% {
<- i^2
cuadrado print(cuadrado)
}
[1] 1
[1] 4
[1] 9
[1] 16
[1] 25
[[1]]
[1] 1
[[2]]
[1] 4
[[3]]
[1] 9
[[4]]
[1] 16
[[5]]
[1] 25
for
con next
Dentro de un bucle for
, puedes usar next
para saltar a la siguiente iteración sin ejecutar el resto del código en la iteración actual.
# Ejemplo de bucle for que imprime los cuadrados de los números del 1 al 5, omitiendo el 3
for (i in 1:5) {
if (i == 3) {
next # Omite la iteración actual
}<- i^2
cuadrado print(cuadrado)
}
[1] 1
[1] 4
[1] 16
[1] 25
Estos son algunos de los tipos de bucles más comunes en R. La elección del bucle dependerá de la estructura de datos y las condiciones específicas de tu tarea. Además, ten en cuenta que en R, a menudo se favorece el uso de operaciones vectorizadas sobre bucles explícitos para mejorar la eficiencia del código.
Las declaraciones de control o estructuras de control nos permiten controlar la manera en que se ejecuta nuestro código.
Las estructuras de control establecen condicionales en nuestros código. Por ejemplo, qué condiciones deben cumplirse para realizar una operación o qué debe ocurrir para ejecutar una función.
Esto es de gran utilidad para determinar la lógica y el orden en que ocurren las operaciones, en especial al definir funciones.
Las estructuras de control más usadas en R son las siguientes.
Estructuras de control | Descripción |
---|---|
if , else |
Si, de otro modo |
for |
Para cada uno en |
while |
Mientras |
break |
Interrupción |
next |
Siguiente |