Si vous voulez vous assurer qu’une instruction qui n’aboutit pas ne bloque pas votre script ou encore si vous avez besoin de gérer les exceptions, vous pouvez utiliser la fonction try.


rm(list=ls(all=TRUE)) # pour partir d'une mémoire vierge
print(a)# va vous renvoyer un message d'erreur... et aura bloqué votre script si vous l'aviez lancé via source() par exemple
try(print(a))# vous affiche l'erreur mais ne gêne pas la suite du processus
try(print(a),silent=T)# ne vous affiche même pas l'erreur

Ici l’exemple donné n’a que peu d’utilité, mais ce principe de gestion des erreurs (en particulier avec tryCatch) peut vous rendre beaucoup de services dans une boucle ou autre.