J'ai utilisé des objets ts pendant un moment mais pas trop de xts, donc j'essayais de calculer la moyenne, la somme, le dernier, le premier ... (FUN) pour chaque année dans les séries chronologiques économiques. Quand je l'essaye j'ai un résultat bizarre.erreur utilisant apply.yearly dans le package xts. Comment ça marche?
Ceci est un exemple rapide: Considérant x et y comme série mensuelle, pendant deux années consécutives:
x <- 1:12
y <- 1:12
serie <- c(x,y)
Puis-je créer un ts objet
serie <- ts(serie,1990,,12)
maintenant je convertir en XTS objet
library(xts)
serie.xts <- as.xts(serie)
plot(serie.xts)
à ce que je vois, la série est correctement créée
serie.xts
La série semble ok
ene 1990 1
feb 1990 2
mar 1990 3
abr 1990 4
may 1990 5
jun 1990 6
jul 1990 7
ago 1990 8
sep 1990 9
oct 1990 10
nov 1990 11
dic 1990 12
ene 1991 1
feb 1991 2
mar 1991 3
abr 1991 4
may 1991 5
jun 1991 6
jul 1991 7
ago 1991 8
sep 1991 9
oct 1991 10
nov 1991 11
dic 1991 12
Puis vient mon problème
par exemple, je tente d'obtenir la dernière valeur pour chaque année, en ce que je sais est ce que cette fonction ne :
apply.yearly(serie.xts,FUN = "last")
mais je reçois ceci:
ene 1990 1
ene 1991 1
dic 1991 12
Je m'y attendais: dic 1990 12 1991 12 dic
Qu'est-ce que je fais mal? Est-ce ainsi que fonctionne cette fonction? Qu'est-ce que cette fonction fait réellement?
Je ne comprends pas quel est ce résultat. S'il vous plaît aider. Et merci d'avoir lu ma question.
R 3.3.3 XTS zoo 0,9 à 7 1.8-0
i essayer, mais aussi me donner le même résultat: 'period.apply (INDEX = extrémités (x = serie.xts, on = "années"), x = serie.xts, FUN = "last") ' –
J'ai essayé votre code, et cela fonctionne très bien pour moi. Je suggère de convertir la classe de votre index de 'yearmon' en' Date' comme ceci 'index (serie.xts) <- as.Date (index (serie.xts))' – sechstein
C'est bizarre. J'essaie dans un autre pc et j'ai le même mauvais résultat. Utilisez-vous la même version? –