Conserver un format de dates correct (lubridate)

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Céline Barrier
Messages : 14
Enregistré le : 30 Mai 2018, 11:49

Conserver un format de dates correct (lubridate)

Messagepar Céline Barrier » 10 Sep 2020, 08:53

Bonjour,
J'ai un soucis pour conserver la colonne des dates de mon tableau au bon format.
Lorsque je fais la conversion (temps en secondes depuis 01/01/1900 à la base), ce format n'est pas bien conservé dans la colonne de mon tableau (on voit que les dates sont toutes les mêmes…)
Pouvez-vous m'aider à résoudre ce soucis ?
Ci-dessous, mon code reproductible.
Merci pour votre aide !

> le fichier si besoin https://drive.google.com/file/d/137uxbO ... sp=sharing

Code : Tout sélectionner


#Repertoire
setwd("XXX")

library(ncdf4)
library(stringr)
library(Rcpp)
library(plyr)
library(lubridate)

#fichier
nc <-nc_open("temp_Corse_surf_avril2013_dailymean.nc")
print(nc)

#Variables
ni <- ncvar_get(nc, "ni")
dim(ni)
nj <- ncvar_get(nc, "nj")
dim(nj)
time = ncvar_get(nc, "time")
head(time)
dim(time())

#dataframe
data_temp<-ncvar_get(nc, "TEMP")
df <- data.frame(cbind(time, as.vector(data_temp)))
colnames(df)<-c("time","temperature")

View(df)

#Enlever les NA
df2 = na.omit(df)
head(df2)
View(df2)

class(df2$temperature)
class(df2$time)


df2$time <- as.POSIXct(time,tz="UTC",origin = "1900-01-01")
df3 <- df2[order(df2$time),]

head(df3)

> head(df3)
                   time temperature
1   2013-04-01 10:30:00    13.30805
31   2013-04-01 10:30:00    13.24063
98   2013-04-01 10:30:00    13.61955
128   2013-04-01 10:30:00    13.38589
158   2013-04-01 10:30:00    13.28095
188   2013-04-01 10:30:00    13.58657


Sébastien Rochette
Messages : 54
Enregistré le : 03 Juil 2020, 12:43
Contact :

Re: Conserver un format de dates correct (lubridate)

Messagepar Sébastien Rochette » 10 Sep 2020, 09:00

Bonjour,

je ne vois pas de problème avec votre jeu de données.
Si vous faites

Code : Tout sélectionner

head(df2)
vous voyez que les dates ne sont pas toutes les mêmes.
Dans df3, vous avez ré-ordonné votre jeu de données en fonction de la date avec "order()", du coup, sur les 6 premières lignes montrées avec "head()", elles sont toutes identiques.
Sébastien
Dev, Consult, Formateur
ThinkR

Céline Barrier
Messages : 14
Enregistré le : 30 Mai 2018, 11:49

Re: Conserver un format de dates correct (lubridate)

Messagepar Céline Barrier » 10 Sep 2020, 09:03

Bonjour,
En effet !


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Google [Bot] et 1 invité

cron