2010-07-11 8 views
8

Je suis nouveau sur stackoverflow et relativement nouveau sur R mais j'ai cherché longtemps et durement et je ne trouve pas de réponse à la question suivante.Comment modifier une série temporelle (XTS ou ZOO) dans R?

J'ai un certain nombre de fichiers de données qui sont la température contre une série temporelle. J'importe le CSV en tant qu'objet ZOO puis je le convertis en XTS. Un fichier correct ressemble à ceci, avec des lectures sur l'heure et la demi-heure:

>head(master1) 
         S_1 
2010-03-03 00:00:00 2.8520 
2010-03-03 00:30:00 2.6945 
2010-03-03 01:00:00 2.5685 
2010-03-03 01:30:00 2.3800 
2010-03-03 02:00:00 2.2225 
2010-03-03 02:30:00 2.0650 

Mais la valeur du temps sur certains sont un peu out - c.-à-23:59:00 pas 00:00:00 ou 00: 29:00 au lieu de 00:30:00.

>head(master21) 
         S_21 
2010-03-04 23:59:00 -0.593 
2010-03-05 00:29:00 -0.908 
2010-03-05 00:59:00 -1.034 
2010-03-05 01:29:00 -1.223 
2010-03-05 01:59:00 -1.349 
2010-03-05 02:29:00 -1.538 

Je veux corriger ces séries chronologiques, comme la différence de minute est pas important pour mon analyse et je veux finalement fusionner les fichiers, de sorte que chaque timeseries doit avoir le même calendrier.

Je veux une commande qui peut simplement dire « passer la série de temps avant de 1 minute, mais ne modifient pas la colonne de données (par exemple S_21). J'ai eu un peu de chance avec gsub() des changements plus faciles, et envisage une regex complexe pour modifier les données avant qu'il ne soit converti en ZOO ou XTS.J'ai lu à propos de lag() et diff() mais ils semblent déplacer les valeurs de données relatives à la série temporelle, s'il vous plaît me corriger si je me trompe

Toute aide résoudre ce problème serait très apprécié

Répondre

10

Essayez

index(master21) <- index(master21) + 60 # adds a minute 

qui va ajouter une minute à l'index temporel. Vous pouvez ensuite utiliser merge() comme alignement des horodatages. De manière plus générale, les vignettes du package zoo vous seront également utiles.

Questions connexes