Comment réparer dans R : impossible d’ajouter des objets ggproto ensemble



Une erreur que vous pouvez rencontrer dans R est :

Error: Cannot add ggproto objects together.
       Did you forget to add this object to a ggplot object? 

Cette erreur se produit généralement lorsque vous tentez de créer une visualisation à l’aide du package ggplot2 mais que vous oubliez d’ajouter un signe plus ( + ) quelque part dans la syntaxe.

Ce didacticiel explique exactement comment corriger cette erreur.

Comment reproduire l’erreur

Supposons que nous ayons le bloc de données suivant dans R qui montre le nombre total de ventes et de clients qu’un magasin reçoit pendant 10 jours différents :

#create data frame
df <- data.frame(day = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10),
                 sales = c(8, 8, 7, 6, 7, 8, 9, 12, 14, 18),
                 customers = c(4, 6, 6, 4, 6, 7, 8, 9, 12, 13))

#view data frame
df

   day sales customers
1    1     8         4
2    2     8         6
3    3     7         6
4    4     6         4
5    5     7         6
6    6     8         7
7    7     9         8
8    8    12         9
9    9    14        12
10  10    18        13

Supposons maintenant que nous essayions de créer un graphique linéaire pour visualiser les ventes et les clients au cours de chacun des 10 jours :

library(ggplot2)

#attempt to create plot with two lines
ggplot(df, aes(x = day))
  geom_line(aes(y = sales, color = 'sales')) + 
  geom_line(aes(y = customers, color = 'customers'))

Error: Cannot add ggproto objects together.
       Did you forget to add this object to a ggplot object?

Nous recevons une erreur nous indiquant que nous ne pouvons pas ajouter des objets ggproto ensemble .

Comment réparer l’erreur

La façon de corriger cette erreur consiste simplement à ajouter un signe plus ( + ) à la fin de la première ligne, ce que nous avons oublié de faire la première fois :

library(ggplot2)

#create plot with two lines
ggplot(df, aes(x = day)) +
  geom_line(aes(y = sales, color = 'sales')) + 
  geom_line(aes(y = customers, color = 'customers'))

Le résultat est un graphique à deux lignes qui montre le total des clients et des ventes au cours de cette période de 10 jours.

Notez que nous ne recevons pas d’erreur cette fois car nous avons utilisé un signe plus ( + ) à la fin de la première ligne.

Ressources additionnelles

Les didacticiels suivants expliquent comment résoudre d’autres erreurs courantes dans R :

Comment réparer dans R : dim(X) doit avoir une longueur positive
Comment réparer dans R : les noms ne correspondent pas aux noms précédents
Comment réparer dans R : la longueur d’un objet plus longue n’est pas un multiple de la longueur d’un objet plus courte
Comment réparer dans R : les contrastes ne peuvent être appliqués qu’à des facteurs avec 2 niveaux ou plus

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *