Maîtrisez la boucle for pour rationaliser les calculs complexes et autres opérations répétitives.
Les boucles sont une structure de base en programmation qui prend un bloc de code et l'exécute à plusieurs reprises. Les boucles for sont l'un des types de boucles que presque toutes les langues contiennent. Les boucles for de R font partie intégrante de l'analyse des données.
Ils servent à diverses fins, du formatage de la sortie à l'exécution de calculs sur de grands ensembles de données. L'utilisation de boucles for dans R facilite l'analyse des données.
R's Basic pour Loop
La boucle for du langage R fonctionne de manière similaire à la norme pour les boucles trouvées dans Go et la plupart des autres langages de programmation. Étant donné un point de départ, il exécutera le code qu'il contient un certain nombre de fois.
Un compteur contient l'itération sur laquelle la boucle est actuellement en cours et vous pouvez y accéder à partir du bloc de code associé. Les boucles peuvent s'exécuter sur un nombre fixe d'itérations ou sur la longueur totale d'un tableau, d'un vecteur ou d'une liste.
Boucles d'itération fixes
Les boucles d'itération fixes dans R prennent la forme suivante :
pour (X dans1:10) {
imprimer (x)
}
Le x dans la boucle est la variable qui stockera l'itération de la boucle.
Après le mot-clé "in", se trouvent les points de départ et d'arrivée de la boucle. La boucle commencera son itérateur au premier nombre.
Après chaque exécution du code dans la boucle, il vérifiera si l'itérateur est égal au nombre après les deux-points.
Si c'est le cas, l'exécution du code se poursuivra après la boucle. Si ce n'est pas le cas, l'itérateur augmentera de 1 et le bloc de code entre parenthèses s'exécutera à nouveau.
Pour les boucles sur les tableaux, les listes et les vecteurs
Juste comme boucler dans un dictionnaire en Python, vous pouvez parcourir les structures de données appropriées dans R à l'aide de la boucle for. Vous pouvez utiliser n'importe quelle structure de données itérable après le mot-clé "in", à la place d'un point de départ et d'arrivée fixe.
Boucler de cette façon changera le comportement du code. Ici, la boucle fonctionnera comme une boucle foreach à partir de langages comme C# :
employés "ben", "Jeanne", "Suzie", "Josh", "Carole")
pour (X dans employés) {
imprimer (x)
}
Maintenant, au lieu de x contenant l'itération actuelle de la boucle, il contiendra l'objet du tableau ou de la liste sur lequel se trouve actuellement la boucle. Une fois chaque boucle terminée, s'il y a plus d'éléments dans la liste, le tableau ou le vecteur, x sera défini sur l'élément suivant. S'il n'y a plus d'éléments, l'exécution se poursuivra avec le code après la boucle.
La fonction primitive c et les boucles for
En plus des structures de données déjà remplies, R peut en composer une nouvelle dans la déclaration de la boucle for. Pour ce faire, utilisez la fonction c pour combiner plusieurs éléments dans un nouveau vecteur.
Vous pouvez simplifier l'exemple ci-dessus en utilisant cette méthode :
pour (X dans c("ben", "Jeanne", "Suzie", "Josh", "Carole")) {
imprimer (x)
}
Notez que la sortie est exactement la même qu'avant :
Déclarations de saut de R
Deux instructions vous permettent d'ignorer les itérations de boucle: break et next. Ils accomplissent cela de différentes manières. Vous devez vous assurer que vous connaissez la différence entre les deux.
La pause
Lorsqu'une boucle rencontre une instruction break à l'intérieur d'elle-même, elle ferme immédiatement la boucle. Étant donné que le programme quitte la boucle une fois qu'il a atteint le mot-clé break, il n'exécutera plus le code restant :
jours "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi",
"Dimanche")pour (X dans jours) {
si (x == "Samedi") {
casser
}
imprimer (x)
}
La boucle ci-dessus imprimera tous les jours de la semaine, mais aucun des jours du week-end.
Le prochain mot-clé
Le mot-clé next saute également une itération, mais contrairement à break, next ne ferme pas la boucle immédiatement. La boucle restant ouverte signifie que tout code supplémentaire dans la boucle actuelle ne s'exécutera pas, mais la prochaine itération se poursuivra comme prévu :
jours "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi",
"Dimanche")pour (X dans jours) {
si (x == "Samedi") {
suivant
}
imprimer (x)
}
Cette boucle sortira chaque jour de la semaine et dimanche, mais elle ne s'imprimera pas le samedi.
Exemple de boucles dans R
Il existe une grande variété de situations dans lesquelles les boucles for sont utiles dans R. Ils peuvent être un excellent moyen d'exécuter des calculs répétitifs, comme l'addition de nombres pour obtenir un total :
commandes 23.4, 699.8, 1042.0)
somme 0.0pour (commande dans ordres) {
total }
chat("le total est de $", total, "\n")
Cet exemple ajoutera un total de commande de chaque commande individuelle dans une liste au total global.
Alternativement, une boucle for peut vous aider à sortir rapidement et facilement de grandes quantités de données bien formatées :
totaux_jour 567.82, 364.72, 762.81, 354.99, 622.87)
pour (jour dans1:longueur (total_jours)) {
chat("Jour #", jour, ": $", total_jour [jour],"\n")
jour 1
}
Vous pouvez utiliser une boucle for pour imprimer chaque jour de la semaine et le total des ventes pour ce jour particulier.
Vous pouvez utiliser une boucle for pour calculer les résultats et les rendre disponibles pour coder en dehors de la boucle for, afin d'obtenir diverses informations :
test_scores 67, 89, 72, 44)
score_total 0
nombre_tests 0pour (score dans les résultats des tests) {
score_total num_tests 1
}
score_moyen imprimer (average_score)
La boucle ci-dessus calculera le score moyen obtenu par les élèves à un test.
Tout ce que vous devez savoir sur les R pour les boucles
Apprendre à exécuter un nombre défini de boucles ou à parcourir un ensemble de données sans longueur fixe est essentiel.
Que vous ayez besoin d'effectuer des calculs répétés sur un tableau, d'imprimer chaque élément d'une liste ou d'afficher un grand nombre de données sous une forme lisible, la boucle for de R peut vous aider.
Comprendre les principes sous-jacents des boucles for est une compétence précieuse à avoir dans votre arsenal, et la maîtriser peut vous aider à écrire un code simple et facile à lire.