Convertir chaîne de caractères AAAAMMJJ en classe de Date dans R
je voudrais convertir ces dates avec le format AAAAMMJJ à une classe de Date.
dates <- data.frame(Date = c("20130707", "20130706", "20130705", "20130704"))
j'ai essayé:
dates <- as.Date(dates, "%Y%m%d")
Et j'obtiens l'erreur suivante:
Error in as.Date.default(dates, "%Y%m%d") :
do not know how to convert 'dates' to class "Date"
Quelle serait la bonne manière de définir ce format?
20
demandé sur
Max Ghenis
2013-07-08 06:52:46
3 réponses
Vous devez fournir l' Date
colonne, pas la totalité data.frame
.
R> as.Date(dates[["Date"]], "%Y%m%d")
[1] "2013-07-07" "2013-07-06" "2013-07-05" "2013-07-04"
16
répondu
GSee
2013-07-08 02:55:21
Classique R:
> start_numeric <- as.Date('20170215', format = '%Y%m%d');
> start_numeric
[1] "2017-02-15"
> format(start_numeric, "%Y%m%d")
[1] "20170215"
5
répondu
d8aninja
2017-03-08 18:45:25
Un supplément de conversion de caractères qui fonctionne pour moi:
dates<-as.Date(as.character(dates),format="%Y%m%d")
Sans la conversion, l'erreur suivante se produit:
dates<-as.Date(dates,format="%Y%m%d")
Error in as.Date.numeric(dates, format = "%Y%m%d") :
'origin' must be supplied
erreur différente mais cela pourrait aider, fonctionne pour POSIXct trop, coller la date et les heures, format %Y%m%d % H
2
répondu
RJP
2017-04-12 09:16:55