Wie kann ich eine Zeitreihe (XTS oder ZOO) in R ändern?

8

Ich bin neu in stackoverflow und ziemlich neu in R, habe aber lange und hart gesucht und kann keine Antwort auf die folgende Frage finden.

Ich habe eine Reihe von Datendateien, die Temperatur gegen eine Zeitreihe sind. Ich importiere die CSV als ZOO-Objekt und konvertiere dann zu XTS. Eine korrekte Datei sieht so aus, mit Lesungen für die Stunde und die halbe Stunde:

%Vor%

Aber der Zeitwert für einige ist leicht out - d. h. 23:59:00 nicht 00:00:00 oder 00:29:00 statt 00:30:00.

%Vor%

Ich möchte diese Zeitreihe korrigieren, da der winzige Unterschied für meine Analyse nicht wichtig ist und ich letztendlich die Dateien zusammenführen möchte, so dass jede Zeitreihe das gleiche Timing haben muss.

Ich möchte einen Befehl, der einfach sagen kann: "Verschiebe die Zeitreihe um 1 Minute vorwärts, aber ändere die Datenspalte nicht (z. B. S_21). Ich hatte etwas Glück mit gsub() bei einfacheren Änderungen und dachte über eine komplexe Regex nach, um die Daten vor der Konvertierung in ZOO oder XTS zu ändern. Ich habe über lag() und diff() gelesen, aber sie scheinen die Datenwerte relativ zur Zeitreihe zu verschieben; Bitte korrigieren Sie mich, wenn ich falsch liege.

Jede Hilfe, die dieses Problem löst, wird sehr geschätzt.

    
phrozenpenguin 11.07.2010, 22:14
quelle

1 Antwort

10

Versuchen Sie

%Vor%

fügt dem Zeitindex eine Minute hinzu. Sie können dann merge() als Zeitstempel verwenden, um sie auszurichten.

Ganz allgemein sind die Vignetten des Pakets zoo auch für Sie nützlich.

    
Dirk Eddelbuettel 11.07.2010, 22:49
quelle

Tags und Links