importation de time series annuelles

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

Nicolas Fabre
Messages : 6
Enregistré le : 08 Juin 2021, 08:08

importation de time series annuelles

Messagepar Nicolas Fabre » 12 Déc 2021, 12:46

Bonjour à tous (je suis débutant),

Je travaille sur des données annuelles depuis un fichier excel très simple à deux colonnes : la première les années de 1980 à 2020, et la seconde des valeurs.

J'aimerais beaucoup travailler ces données sur R. Or, quand j'importe le fichier, R ne le reconnaît pas comme TS et ajoute une colonne de data frame que j'imagine être la numérotation individus.
Même en recodant ma colonne n°1 en TS, tous les modèles que je tente d'appliquer ne reconnaissent pas mes dates annuelles comme TS. Au mieux mes graphiques (e.g. plot.ts) n'intègrent pas le pas de temps annuel de 1980 à 2020, mais par pas de 10, 20, 30... Au pire, les fonctions que j'appelle sont définies pour du TS et je ne peux pas les appliquer à mon cas.

En regardant les différents sujets sur ce forum, je me suis rendu compte que les TS étaient codées en %Y%M%D%, alors que moi je n'ai que le %Y%. Même en appliquant génériquement cela dans mon excel (e.g. 1980/01/°1 ; 1981/01/01...) le problème reste le même. J'ai essayé différentes manières, glanées sur différents forum (package zoo), mais rien ne semble fonctionner. Souvent, les cours d'analyse de TS avec R sont basés soit sur des données intégrées à des packages ou au logiciel, soit créées de toute pièce dans R.

Aussi deux questions découlent de cela :

- est-il possible de ne travailler que sur des TS annuelles importées depuis excel ?
- comment faire pour importer un tel tableur ? Une mise en forme doit-elle être respectée ?


Merci par avance pour vos réponses !

marlyse clement
Messages : 7
Enregistré le : 27 Oct 2021, 17:25

Re: importation de time series annuelles

Messagepar marlyse clement » 13 Déc 2021, 11:16

Bonjour,

Quel package R avez vous installé ? pour que les date soit cadable en date il faut lubridate (du package tydiverse) ...

Possibilité de convertir votre excel en csv ? (c'est en francais)
https://www.imo.universite-paris-saclay ... e_temp.pdf


BOnne journée,
marlyse

Nicolas Fabre
Messages : 6
Enregistré le : 08 Juin 2021, 08:08

Re: importation de time series annuelles

Messagepar Nicolas Fabre » 13 Déc 2021, 11:33

Bonjour Marlyse et merci pour votre réponse.

Oui le fichier est en CSV et j'ai en effet le package Tidyverse, ainsi que ceux qu'il est conseillé d'avoir pour le travail sur TS. J'ai vraiment l'impression de louper une manipulation simple, malgré le recodage de ma variable temporelle en TS.

Merci

Pierre-Yves Berrard
Messages : 1029
Enregistré le : 12 Jan 2016, 23:30

Re: importation de time series annuelles

Messagepar Pierre-Yves Berrard » 13 Déc 2021, 16:57

Bonjour,

À quoi ressemblent vos données juste après l'import dans R ? Quelles instructions avez-vous utilisées pour essayer de convertir les données en time series ?

Liens utiles pour répondre à ces deux questions :
PY

Nicolas Fabre
Messages : 6
Enregistré le : 08 Juin 2021, 08:08

Re: importation de time series annuelles

Messagepar Nicolas Fabre » 13 Déc 2021, 19:02

Bonjour,

Merci pour votre réponse.

Alors j'importe mes données avec :

Code : Tout sélectionner

TS <- read.table("C:/Users/l/Desktop/TS.csv", header = TRUE, sep=";")


Cela me donne :

Code : Tout sélectionner

structure(list(AN = 2000:2040, TE = c(1L, 4L, 5L, 3L, 6L, 6L,
6L, 7L, 4L, 5L, 9L, 0L, 4L, 5L, 6L, 7L, 8L, 2L, 9L, 7L, 5L, 1L,
5L, 6L, 7L, 8L, 9L, 6L, 5L, 7L, 7L, 3L, 2L, 1L, 6L, 7L, 9L, 8L,
6L, 5L, 6L)), class = "data.frame", row.names = c(NA, -41L))



Je recode ma variable:

Code : Tout sélectionner

TS$AN <- as.ts(TS$AN)



Cela me donne avec dput:

Code : Tout sélectionner

structure(list(AN = structure(2000:2040, .Tsp = c(1, 41, 1), class = "ts"),
    TE = c(1L, 4L, 5L, 3L, 6L, 6L, 6L, 7L, 4L, 5L, 9L, 0L, 4L,
    5L, 6L, 7L, 8L, 2L, 9L, 7L, 5L, 1L, 5L, 6L, 7L, 8L, 9L, 6L,
    5L, 7L, 7L, 3L, 2L, 1L, 6L, 7L, 9L, 8L, 6L, 5L, 6L)), row.names = c(NA,
-41L), class = "data.frame")


La variable est donc bien identifiée comme TS. Mais si je fais un plot.ts par exemple, le x (time) est gradué en 10, 20, 30, 40... Quand j'essaye de faire des manipulations glanées sur le net sur ma série, j'ai toujours des messages d'erreur.


Merci par avance

Nicolas

Pierre-Yves Berrard
Messages : 1029
Enregistré le : 12 Jan 2016, 23:30

Re: importation de time series annuelles

Messagepar Pierre-Yves Berrard » 13 Déc 2021, 19:34

Il faut plutôt utiliser la fonction `ts`pour construire la série "de toute pièce", par exemple :

Code : Tout sélectionner

TS$VAR_TS <- ts(TS$TE, start = TS$AN[1])
PY

Nicolas Fabre
Messages : 6
Enregistré le : 08 Juin 2021, 08:08

Re: importation de time series annuelles

Messagepar Nicolas Fabre » 13 Déc 2021, 22:54

En effet, ça marche nickel.

Je vous remercie pour cette réponse. Impossible à trouver sans ce forum.

Bonne soirée !


Retourner vers « Questions en cours »

Qui est en ligne

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