Comment réparer : la chaîne de caractères n’est pas dans un format standard sans ambiguïté



Une erreur courante que vous pouvez rencontrer dans R est :

Error in as.POSIXlt.character(x, tz, ...) : 
  character string is not in a standard unambiguous format

Cette erreur se produit généralement lorsque vous tentez de convertir un objet dans R en un format de date, mais que l’objet est actuellement soit un caractère, soit un facteur.

Pour corriger cette erreur, vous devez d’abord convertir l’objet en numérique.

Ce tutoriel explique comment corriger cette erreur en pratique.

Comment reproduire l’erreur

Supposons que nous ayons le bloc de données suivant dans R :

#create data frame
df <- data.frame(date=c('1459397140', '1464397220', '1513467142'),
                 sales=c(140, 199, 243))

#view data frame
df

        date sales
1 1459397140   140
2 1464397220   199
3 1513467142   243

Supposons maintenant que nous essayions de convertir les valeurs de la colonne de date en un format de date :

#attempt to convert values in date column to date
df$date <- as.POSIXct(df$date, origin='1970-01-01')

Error in as.POSIXlt.character(x, tz, ...) : 
  character string is not in a standard unambiguous format

Nous recevons une erreur car les valeurs de la colonne date sont actuellement au format caractère, que la fonction as.POSIXct() ne sait pas gérer.

Comment réparer l’erreur

Pour corriger cette erreur, nous devons utiliser as.numeric() pour d’abord convertir les valeurs de la colonne de date en un format numérique, qui est un format que as.POSIXct peut gérer :

#convert values in date column to date
df$date <- as.POSIXct(as.numeric(as.character(df$date)), origin='1970-01-01')

#view updated data frame
df

                 date sales
1 2016-03-31 04:05:40   140
2 2016-05-28 01:00:20   199
3 2017-12-16 23:32:22   243

Cette fois, nous ne recevons pas d’erreur et nous parvenons à convertir avec succès les valeurs de la colonne de date en format de date car nous avons d’abord converti les valeurs en format numérique.

Ressources additionnelles

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

Comment réparer : l’objet (liste) ne peut pas être contraint de taper « double »
Comment réparer dans R : formule de modèle invalide dans ExtractVars
Comment réparer dans R : le remplacement a une longueur nulle

Ajouter un commentaire

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