Personnaliser les préférences

Nous utilisons des cookies pour vous aider à naviguer efficacement et à exécuter certaines fonctions. Vous trouverez ci-dessous des informations détaillées sur tous les cookies sous chaque catégorie de consentement.

Les cookies classés comme « Nécessaires » sont stockés sur votre navigateur car ils sont essentiels pour activer les fonctionnalités de base du site.... 

Toujours actif

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

Aucun cookie à afficher.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

Aucun cookie à afficher.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

Aucun cookie à afficher.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

Aucun cookie à afficher.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

Aucun cookie à afficher.

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 *