Source de cet article : Création d'une barre de progression dans R | Joseph Crispell
Table des matières
4.Écraser une ligne imprimée en utilisant \r
Nous attendons tous la fin d’une boucle for ou une fonction particulièrement complexe. Au fil des années, en suivant la progression de mon code R, je suis tombé sur quelques révélations. Cet article enregistre l'ordre dans lequel j'ai trouvé les points de connaissances sur la création d'une barre de progression dans R !
1.La print()
fonction
for(i in 1:500){
# Sleep for 0.1 seconds
Sys.sleep(0.01)
# Print progress
print(paste("Finished", i, "of", n))
}
2.La fonction cat()
for(i in 1:500){
# Sleep for 0.1 seconds
Sys.sleep(0.01)
# Print progress
cat("Finished", i, "of", n, "\n")
}
3.L'opérateur de module (%%)
for(i in 1:500){
# Sleep for 0.1 seconds
Sys.sleep(0.01)
# Print progress
if(i %% 100 == 0){
cat("Finished", i, "of", n, "\n")
}
}
4.Écraser une ligne imprimée à l'aide \r
for(i in 1:500){
# Sleep for 0.1 seconds
Sys.sleep(0.01)
# Print progress
cat("\rFinished", i, "of", n)
}
5.fonction progress()
library(basicPlotteR)
for(i in 1:500){
# Sleep for 0.1 seconds
Sys.sleep(0.01)
# Print progress
progress(i, n)
}
6. Fonction txtProgressBar()
# Initialise a progress bar
pb <- txtProgressBar(min = 1, max = n, style = 3)
for(i in 1:500){
# Sleep for 0.1 seconds
Sys.sleep(0.01)
# Print progress
setTxtProgressBar(pb, i)
}
close(pb)
Chaque méthode de suivi des progrès est utile dans différentes situations.
- Bien que les deux dernières options soient superbes, elles ne sont utiles qu’à l’intérieur des boucles.
- \rCela m'épate, cela devrait fonctionner dans la plupart des langues !
- Modulo (%%) est probablement celui que j'utilise le plus, me permettant de vérifier ma progression sans imprimer des centaines ou des milliers de lignes à l'écran.
- Quiconque souhaite utiliser et voir le code de ma fonction progress() peut le trouver sur github. Cela fait partie de mon package basicPlotteR.
source:
Création d'une barre de progression dans R | Joseph Crispell (Cet article est vraiment génial. Il résume les fonctions de la barre de progression dans R et affiche les résultats de chaque fonction via une animation. Chaque fonction a une explication courte et facile à comprendre. Le code est présenté, article très intéressant !)