Domine el bucle for para agilizar cálculos complejos y otras operaciones repetitivas.
Los bucles son una estructura básica en la programación que toman un bloque de código y lo ejecutan repetidamente. Los bucles for son uno de los tipos de bucles que contienen casi todos los idiomas. Los bucles for de R son una parte integral del análisis de datos.
Sirven para una variedad de propósitos, desde dar formato a la salida hasta ejecutar cálculos en grandes conjuntos de datos. El uso de bucles for en R facilita la realización del análisis de datos.
Básico de R para Loop
El bucle for del lenguaje R funciona de manera similar al estándar bucles for encontrados en Go y la mayoría de los otros lenguajes de programación. Dado un punto de partida, ejecutará el código contenido en él un número determinado de veces.
Un contador contiene la iteración en la que se encuentra actualmente el bucle y puede acceder a él desde el bloque de código asociado. Los bucles se pueden ejecutar durante un número fijo de iteraciones o durante la longitud total de una matriz, un vector o una lista.
Bucles de iteración fijos
Los bucles de iteración fijos en R toman la siguiente forma:
para (X en1:10) {
imprimir (x)
}
La x en el bucle es la variable que almacenará la iteración del bucle.
Después de la palabra clave "in" están los puntos de inicio y final del bucle. El ciclo comenzará su iterador en el primer número.
Después de cada vez que se ejecuta el código en el ciclo, verificará si el iterador es igual al número después de los dos puntos.
Si es así, la ejecución del código continuará después del bucle. Si no es así, el iterador aumentará en 1 y el bloque de código entre paréntesis se ejecutará nuevamente.
Para bucles en matrices, listas y vectores
Al igual que recorriendo un diccionario en Python, puede iterar sobre estructuras de datos apropiadas en R usando el bucle for. Puede utilizar cualquier estructura de datos iterables después de la palabra clave "in", en lugar de un punto de inicio y final fijo.
Hacer un bucle de esta manera cambiará el comportamiento del código. Aquí, el bucle funcionará como un bucle foreach de lenguajes como C#:
empleados "ben", "Jane", "Suzi", "José", "Villancico")
para (X en empleados) {
imprimir (x)
}
Ahora, en lugar de que x contenga la iteración actual del bucle, contendrá el objeto de la matriz o lista en la que se encuentra actualmente el bucle. Después de que se completa cada bucle, si hay más elementos en la lista, matriz o vector, x se establecerá en el siguiente elemento. Si no hay más elementos, la ejecución continuará con el código después del bucle.
La función primitiva c y bucles for
Además de las estructuras de datos ya pobladas, R puede componer una nueva en la declaración del bucle for. Para hacerlo, use la función c para combinar múltiples elementos en un nuevo vector.
Puedes simplificar el ejemplo anterior usando este método:
para (X en C("ben", "Jane", "Suzi", "José", "Villancico")) {
imprimir (x)
}
Tenga en cuenta que la salida es igual que antes:
Declaraciones de salto de R
Dos instrucciones le permiten omitir iteraciones de bucle: break y next. Ellos logran esto de diferentes maneras. Debes asegurarte de saber la diferencia entre los dos.
La palabra clave de ruptura
Cuando un ciclo encuentra una declaración de interrupción dentro de sí mismo, inmediatamente cierra el ciclo. Dado que el programa sale del ciclo una vez que encuentra la palabra clave break, no volverá a ejecutar el código restante:
días "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado",
"Domingo")para (X en días) {
si (x == "Sábado") {
romper
}
imprimir (x)
}
El bucle anterior imprimirá todos los días de la semana, pero ninguno de los días del fin de semana.
La próxima palabra clave
La palabra clave next también salta una iteración, pero a diferencia de break, next no cierra el ciclo inmediatamente. El ciclo que permanece abierto significa que cualquier código adicional dentro del ciclo actual no se ejecutará, pero la próxima iteración continuará según lo planeado:
días "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado",
"Domingo")para (X en días) {
si (x == "Sábado") {
próximo
}
imprimir (x)
}
Este bucle generará todos los días de la semana y los domingos, pero no los sábados.
Ejemplo de bucles en R
Hay una amplia variedad de situaciones en las que los bucles for son útiles en R. Pueden ser una excelente manera de ejecutar cálculos repetitivos, como sumar números para obtener un total:
pedidos 23.4, 699.8, 1042.0)
totales 0.0para (orden en pedidos) {
total }
gato("el total es $", total, "\norte")
Este ejemplo agregará un pedido total de cada pedido individual en una lista al total general.
Alternativamente, un ciclo for puede ayudarlo a generar rápida y fácilmente grandes cantidades de datos bien formateados:
totales_día 567.82, 364.72, 762.81, 354.99, 622.87)
para (día en1:longitud (day_totals)) {
gato("Día #", día, ": $", day_totals[día],"\norte")
día 1
}
Puede usar un bucle for para imprimir cada día de la semana y las ventas totales de ese día en particular.
Puede usar un ciclo for para calcular los resultados y ponerlos a disposición del código fuera del ciclo for, para obtener una variedad de información:
puntajes_de_pruebas 67, 89, 72, 44)
puntuación_total 0
núm_pruebas 0para (puntaje en resultados de las pruebas) {
puntuación_total núm_pruebas 1
}
puntuación_promedio imprimir (puntuación_promedio)
El ciclo anterior calculará el puntaje promedio que los estudiantes lograron en una prueba.
Todo lo que necesita saber sobre R para bucles
Es esencial aprender a ejecutar un número determinado de bucles o iterar sobre un conjunto de datos sin una longitud fija.
Ya sea que necesite realizar cálculos repetidos en una matriz, imprimir todos los elementos de una lista o mostrar un gran lote de datos en un formato legible, el ciclo for de R puede ayudar.
Comprender los principios subyacentes detrás de los bucles for es una habilidad valiosa que debe tener en su arsenal, y dominarla puede ayudarlo a escribir código simple y fácil de leer.