Comment obtenir DataFrame.pct_change pour calculer la variation mensuelle quotidienne des données sur les prix?
Je sais qu'il est possible de compenser avec le periods
argument, mais comment peut-on aller sur le retour-izing quotidienne des données sur les prix qui se propage tout au long d'un mois (jours de bourse, par exemple)?
Exemple de données:
In [1]: df.AAPL
2009-01-02 16:00:00 90.36
2009-01-05 16:00:00 94.18
2009-01-06 16:00:00 92.62
2009-01-07 16:00:00 90.62
2009-01-08 16:00:00 92.30
2009-01-09 16:00:00 90.19
2009-01-12 16:00:00 88.28
2009-01-13 16:00:00 87.34
2009-01-14 16:00:00 84.97
2009-01-15 16:00:00 83.02
2009-01-16 16:00:00 81.98
2009-01-20 16:00:00 77.87
2009-01-21 16:00:00 82.48
2009-01-22 16:00:00 87.98
2009-01-23 16:00:00 87.98
...
2009-12-10 16:00:00 195.59
2009-12-11 16:00:00 193.84
2009-12-14 16:00:00 196.14
2009-12-15 16:00:00 193.34
2009-12-16 16:00:00 194.20
2009-12-17 16:00:00 191.04
2009-12-18 16:00:00 194.59
2009-12-21 16:00:00 197.38
2009-12-22 16:00:00 199.50
2009-12-23 16:00:00 201.24
2009-12-24 16:00:00 208.15
2009-12-28 16:00:00 210.71
2009-12-29 16:00:00 208.21
2009-12-30 16:00:00 210.74
2009-12-31 16:00:00 209.83
Name: AAPL, Length: 252
Comme vous pouvez le voir, il suffit de compensation de 30 ne serait pas produire des résultats corrects, il y a des lacunes dans les données timestamp, pas tous les mois est de 30 jours, etc. Je sais il doit y avoir un moyen facile de faire cela en utilisant les pandas.
la différence est due à la fréquence différente:
BM
est l'affaire du mois, tandis que M
est le mois (voir le docs).
OriginalL'auteur Dallas | 2012-12-26
Vous devez vous connecter pour publier un commentaire.
Vous pouvez ré-échantillonner les données d'affaires mois. Si vous ne voulez pas que la moyenne des prix (qui est la valeur par défaut dans
resample
) vous pouvez utiliser un personnalisé méthode de rééchantillonnage à l'aide de l'argument mot-cléhow
:asfreq('M', fill_method='ffill')
. Certains soins doivent être pris avec de l'intraday données maisNe sais pas quelle méthode est par défaut: normalement, je voudrais utiliser
resample
. Quels sont les avantages lors de l'utilisation deasfreq
? (lors de l'utilisation deasfreq
le mot-clé semble êtremethod
(pasfill_method
dans 0.10)Merci de voir mise à Jour en Question.
J'ai ajouté un commentaire à votre question.
resample
devrait fonctionner, pas sûr au sujet des avantages deasfreq
.Merci. Retiré la mise à Jour et marqué répondu.
OriginalL'auteur bmu