Afficher la sortie avec cat() et print()
Distinguez cat() pour la sortie dans la console de print() pour les objets.
Afficher la sortie avec cat() et print() est une leçon R Academy gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage R Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours R Academy comprend 4 leçons au total.
print() — Fonction de sortie par défaut
print() est la méthode par défaut de R pour afficher des objets. Elle utilise la classe de l’objet pour sélectionner la méthode de formatage appropriée. Dans les sessions interactives, saisir le nom d’une variable revient à appeler print() sur celle-ci.
x <- c(1, 2, 3, 4, 5)
print(x)
# Equivalent to:
xcat() — Sortie brute de caractères
cat() concatène ses arguments et les affiche sous forme de texte brut, sans guillemets autour, sans marqueurs d’index tels que [1] et, par défaut, sans saut de ligne final. Cette fonction est conçue pour afficher du texte formaté, et non pour afficher des objets R.
name <- 'Alice'
age <- 30
cat('Name:', name, '\n')
cat('Age:', age, '\n')
cat('Score:', 92.5, '\n')Différence essentielle : guillemets et [1]
La différence la plus visible concerne l’affichage des chaînes de caractères. print() entoure les chaînes de guillemets et ajoute [1] ; cat() affiche les caractères bruts, sans décoration.
msg <- 'Hello World'
print(msg)
cat(msg, '\n')cat() avec l’argument sep
cat() accepte un argument sep, placé entre chaque élément affiché. La valeur par défaut est une espace. Utilisez sep = '' pour n’utiliser aucun séparateur, ou toute autre chaîne pour formater précisément la sortie.
cat('a', 'b', 'c', sep = '')
cat('a', 'b', 'c', sep = '-')
cat(1:5, sep = ', ')
cat('x =', 42, sep = '')cat() avec l’argument fill
L’argument fill ajoute un saut de ligne lorsque la sortie dépasse une largeur donnée, en caractères. Définir fill = TRUE utilise l’option width actuelle. C’est pratique pour répartir de longues suites de mots sur plusieurs lignes.
words <- c('The', 'quick', 'brown', 'fox', 'jumps',
'over', 'the', 'lazy', 'dog')
cat(words, fill = 30)Sélection de méthode par print()
print() est une fonction générique : elle sélectionne une méthode propre à une classe. Par exemple, print.data.frame formate joliment les cadres de données, tandis que print.factor affiche les niveaux, entre autres. C’est pourquoi le même appel peut produire un résultat différent selon les objets.
# print dispatches differently per class
print(42L) # integer
print(factor(c('a', 'b', 'a'))) # factor with levels
print(list(x = 1, y = 'hi')) # listinvisible() — Désactiver l’affichage automatique
invisible(x) renvoie son argument, mais désactive l’affichage automatique lorsqu’une valeur est renvoyée par une fonction ou une expression. Cette fonction est utilisée par les fonctions qui renvoient des valeurs silencieusement, comme les opérateurs d’affectation.
# Explicit print shows the value
f <- function(x) invisible(x * 2)
result <- f(5)
# Nothing printed automatically
f(5)
# But print() forces it
print(f(5))message() — Vers stderr
message() écrit dans stderr plutôt que dans stdout. Elle ajoute automatiquement un saut de ligne. Contrairement à cat() ou print(), les messages peuvent être supprimés avec suppressMessages() et interceptés avec tryCatch().
message('This goes to stderr')
cat('This goes to stdout\n')
# Suppress messages:
suppressMessages(message('hidden'))
cat('Still visible\n')Quand utiliser cat() plutôt que print()
Utilisez cat() lorsque vous souhaitez produire une sortie textuelle lisible par une personne : lignes de journal, messages de progression ou rapports formatés. Utilisez print() lorsque vous souhaitez examiner fidèlement des objets R, en conservant leurs informations de type et leur structure.
# cat() for formatted output
cat(sprintf('Processing %d records...\n', 500))
cat('Done.\n')
# print() to inspect objects
result <- list(n = 500, mean = 4.2, sd = 1.1)
print(result)print() sur les cadres de données
print.data.frame formate les cadres de données avec les numéros de ligne, les en-têtes de colonne et des valeurs alignées. Vous pouvez contrôler le nombre de lignes affichées avec une syntaxe telle que print(df, n = k), ou en utilisant head() avant l’affichage.
df <- data.frame(
name = c('Alice', 'Bob', 'Carol'),
score = c(88, 95, 72)
)
print(df)cat() pour suivre la progression d’une boucle
Une utilisation pratique de cat() consiste à afficher la progression d’une boucle. Comme cat() n’ajoute pas de saut de ligne automatiquement, vous pouvez construire progressivement une ligne, puis la terminer avec '\n'.
for (i in 1:5) {
cat(sprintf('Processing file %d of 5...\n', i))
}
cat('All files processed.\n')Vérification rapide
Quelle fonction de sortie écrit dans stderr, ajoute automatiquement un saut de ligne et peut être supprimée avec suppressMessages() ?
Fonctions de sortie : points essentiels
Points essentiels concernant les fonctions de sortie de R :
print(x)— examiner des objets R ; utilise un formatage propre à la classe ; ajoute[1]et des guillemetscat(...)— sortie de texte brut ; sans guillemets ; sans saut de ligne automatique ; utilisez explicitement'\n'cat()acceptesepetfillpour contrôler le formatageinvisible(x)— renvoyer x sans affichage automatiquemessage()— écrit dans stderr ; ajoute automatiquement un saut de ligne ; supprimée parsuppressMessages()- Utilisez
cat()etsprintf()ensemble pour les rapports et les journaux formatés
x <- 'result'
print(x) # shows: [1] "result"
cat(x, '\n') # shows: result
message('info: ', x) # goes to stderr
f <- function() invisible(42)
f() # nothing printed
print(f()) # forces print: [1] 42Apprends R avec un tuteur IA — gratuit
Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.
- Cours
- 43
- Leçons
- 159
Questions Fréquemment Posées
La leçon « Afficher la sortie avec cat() et print() » est-elle gratuite ?
Oui — le texte complet de « Afficher la sortie avec cat() et print() » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours R Academy, passe à CoddyKit PRO. Le cours R Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Afficher la sortie avec cat() et print() » ?
Distinguez cat() pour la sortie dans la console de print() pour les objets. Tu pratiques R Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer R Academy ?
Aucune expérience préalable n'est requise. R Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.
Combien de temps prend la leçon « Afficher la sortie avec cat() et print() » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon R Academy ?
Oui. Chaque leçon R Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Construire des chaînes avec paste() et paste0()
- Sortie mise en forme avec sprintf()
- Afficher la sortie avec cat() et print()
- Remplissage et alignement des chaînes