in

La Gestion des Erreurs en R et Python. En cas d’erreur survenant en cours de route… | par Gustavo Santos | Avr, 2023


ERROR HANDLING IN R AND PYTHON: UNE ÉTAPE ESSENTIELLE POUR ÉVITER LES PANNES ET PERTES DE DONNÉES

Si une erreur survient lors de la programmation, c’est toujours frustrant. Cependant, les erreurs ne sont pas toujours mauvaises. Elles peuvent être une opportunité pour solutionner des problèmes, mais il faut savoir les considérer comme des éléments qui ne fonctionnent pas correctement dans votre code. Dans cet article, nous allons explorer les différentes fonctions de gestion d’erreurs dans R et Python qui peuvent aider à éviter les pannes et les pertes de données.

L’IMPORTANCE DE GÉRER LES ERREURS

Même si nous pouvons tester différents scénarios, l’utilisateur final est toujours le plus susceptible de trouver plus de bugs et d’erreurs que nous. Pour éviter cela et minimiser les pertes de données, il est important de planifier les erreurs les plus courantes. La gestion d’erreurs est une ressource de programmation permettant de maintenir le code en fonctionnement, même en cas d’erreur, sans arrêt complet du programme.

COMMENT GÉRER LES ERREURS EN R ET EN PYTHON

Dans R, la fonction de gestion d’erreurs est tryCatch. Cette fonction va essayer d’exécuter le code principal. Si elle rencontre une erreur, le bloc secondaire de code (contenant le traitement d’erreur) peut être exécuté. Le même principe est appliqué en Python, en utilisant le format “try…except”.

CODE D’EXEMPLE EN R ET EN PYTHON

Pour mieux illustrer l’utilisation de ces fonctions, prenons un exemple simple : nous avons une fonction qui calcule la différence entre deux nombres et la rapporte à la première entrée en pourcentage. Si l’un des deux nombres est une chaîne de caractères, le code produit une erreur.

En utilisant la fonction tryCatch en R et le format “try…except” en Python, nous pouvons prévoir le traitement de cette erreur et faire en sorte que le programme continue à fonctionner sans interruption.

VOICI LE CODE EN R:

“`{r}
# Fonction de calcul des pourcentages de différence entre deux nombres
pct_difference <- function(n1, n2) { "Cette fonction calcule la différence en pourcentage entre n1 et n2, en supposant que n1 est la référence" pct_diff <- (n1 - n2) / n1 return (cat('La différence entre', n1, 'et', n2, 'est', n1 - n2, ', soit', pct_diff * 100, '% de', n1)) } # Exemple 1 pct_difference(10, 2) # La différence entre 10 et 2 est 8, soit 80% de 10 # Exemple 2 pct_difference(10, '2') # Erreur : argument non numérique à l'opérateur binaire # Correction de l'exemple 2 avec la méthode tryCatch pct_difference_error_handling <- function(n1, n2) { "Cette fonction calcule la différence en pourcentage entre n1 et n2, en supposant que n1 est la référence" tryCatch( pct_diff <- (n1 - n2) / n1, error = return(cat('La différence entre', as.integer(n1), 'et', as.integer(n2), 'est', as.integer(n1) - as.integer(n2), ', soit', 100 * (as.integer(n1) - as.integer(n2)) / as.integer(n1), '% de', n1)), return ) return (cat('La différence entre', n1, 'et', n2, 'est', n1 - n2, ', soit', pct_diff * 100, '% de', n1)) } # Exemple 1 avec correction d'erreur pct_difference_error_handling(10, 3) # La différence entre 10 et 3 est 7, soit 70% de 10 # Exemple 2 avec correction d'erreur pct_difference_error_handling('10', '3') # La différence entre 10 et 3 est 7, soit 70% de 10 ``` ET VOICI LE CODE EN PYTHON: ```{python} # Fonction de calcul des pourcentages de différence entre deux nombres def pct_difference_error_handling(n1, n2): """ Cette fonction calcule la différence en pourcentage entre n1 et n2, en supposant que n1 est la référence """ try: pct_diff = (n1 - n2) / n1 return f'La différence entre {n1} et {n2} est {n1 - n2}, soit {pct_diff * 100}% de {n1}' except: pct_diff = (int(n1) - int(n2)) / int(n1) return f'La différence entre {n1} et {n2} est {int(n1) - int(n2)}, soit {pct_diff * 100}% de {n1}' # Exemple 1 pct_difference_error_handling(10, 2) # La différence entre 10 et 2 est 8, soit 80.0% de 10 # Exemple 2 pct_difference_error_handling('10', '2') # La différence entre 10 et 2 est 8, soit 80.0% de 10 ``` CONCLUSION Dans cet article, nous avons vu l'importance de la gestion d'erreur en programmation et comment cela peut aider à éviter les pannes et les pertes de données. Nous avons également fourni des exemples de code en R et en Python pour montrer comment utiliser ces fonctions de gestion d'erreur. Toutefois, il convient de rappeler que la gestion d'erreurs ne devrait pas être la seule solution à un problème de programmation, car cela peut masquer des erreurs plus graves. C'est pourquoi il est recommandé de prévoir des cas d'utilisation de ces fonctions de manière efficace et responsable. Sources : - Exception handling. (s.d.). Dans Wikipédia. Repéré le 23 avril 2023, sur https://en.wikipedia.org/wiki/Exception_handling - Santos, G. (2023, 23 avril). Error Handling in R and Python: If an error comes up in the middle of a…. Dans Medium. Repéré le 23 avril 2023, sur https://medium.com/@gustavopinto/error-handling-in-r-and-python-11d61f9d3d30

What do you think?

Written by Barbara

Leave a Reply

Your email address will not be published. Required fields are marked *

Résumez-moi.

La plateforme YouTube Music déploie officiellement des podcasts