Comment réparer dans R : ‘x’ doit être numérique



Une erreur que vous pouvez rencontrer dans R est :

Error in hist.default(data) : 'x' must be numeric

Cette erreur se produit lorsque vous tentez de créer un histogramme pour une variable qui n’est pas numérique.

Ce didacticiel explique exactement comment corriger cette erreur.

Comment reproduire l’erreur

Supposons que nous essayions de créer un histogramme pour le vecteur de données suivant :

#define vector
data <- c('1.2', '1.4', '1.7', '1.9', '2.2', '2.5', '3', '3.4', '3.7', '4.1')

#attempt to create histogram to visualize distribution of values in vector
hist(data)

Error in hist.default(data) : 'x' must be numeric

Nous recevons une erreur car les données ne sont actuellement pas un vecteur numérique. Nous pouvons le confirmer en vérifiant la classe :

#check class
class(data)

[1] "character"

Actuellement, les données sont un vecteur de caractères.

Comment réparer l’erreur

Le moyen le plus simple de corriger cette erreur consiste simplement à utiliser as.numeric() pour convertir notre vecteur en numérique :

#convert vector from character to numeric
data_numeric <- as.numeric(data)

#create histogram
hist(data_numeric)

Notez que nous ne recevons pas d’erreur et que nous parvenons à créer l’histogramme car notre vecteur est désormais numérique.

Nous pouvons le vérifier en vérifiant la classe :

#check class
class(data_numeric)

[1] "numeric"

Ressources additionnelles

Les didacticiels suivants expliquent comment corriger d’autres erreurs courantes dans R :

Comment réparer : les NA introduites par la coercition
Comment réparer : nombre incorrect d’indices sur la matrice
Comment réparer : le nombre d’éléments à remplacer n’est pas un multiple de la longueur de remplacement

Ajouter un commentaire

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