Bonjour,
j'ai un petit souci avec R quand je souhaite passer en paramètre le nom d'une variable dans une fonction de R. j'obtiens le message d'erreur suivant : Error in `geom_point()`:
! Problem while computing aesthetics.
i Error occurred in the 1st layer.
Caused by error in `round()`:
! argument non numérique pour une fonction mathématique
sans la fonction round(), le programme tourne
Voici le programme simplifié:
#génération jeu de données
cat <- rep(factor(c("A","B")),5)
v1 <- runif(10,41,50)
v2 <- runif(10,min = 11,max = 20)
df <- as.data.frame(cbind(cat,v1,v2))
class(df)
str(df)
#programme de génération de cartes en boucles
var_nom <- c("v1","v2")
for (i in 1:2 ) {
dev.new()
carto_equipt<- ggplot(data=df,aes(cat,round(var_nom[i],1)))+geom_point()
dev.off()
# Sauvegarde la carte en format image.
ggsave(
filename = paste("carte_essai_",nom[i],".png"),
width = 297,
height = 210,
units = "mm",
dpi = 400
)
}
quelle solution adopter , mise à part appliquer la fonction round() en amont sur le df?
Partager