Wie man Zeitreihen in Python aggregiert?

9

Ich habe zwei verschiedene Zeitreihen mit teilweise überlappenden Zeitstempeln:

%Vor%

was folgende Daten repräsentiert:

%Vor%

Ich möchte an jedem Tag einen gewichteten Durchschnitt mit den Koeffizienten a (0,3) und b (0,7) berechnen und dabei fehlende Werte ignorieren:

%Vor%

wenn ich zuerst versuche, diese Zeitreihen auszurichten:

%Vor%

Ich bekomme richtig maskierte Zeitreihen:

%Vor%

aber wenn ich a1 * 0.3 + b1 * 0.7 mache, ignoriert es Werte, die nur in einer Zeitserie vorhanden sind:

%Vor%

Was soll ich tun, um die erwarteten zu erhalten?

%Vor%

EDIT : Die Antwort sollte auch auf mehr als zwei initiale Zeitreihen mit unterschiedlichen Gewichtungen und unterschiedlich fehlenden Werten anwendbar sein.

Wenn wir also vier Zeitreihen mit den Gewichten T1 (0.1), T2 (0.2), T3 (0.3) und T4 (0.4) haben, sind ihre Gewichte zu einem gegebenen Zeitstempel:

%Vor%     
eumiro 20.10.2010, 12:02
quelle

1 Antwort

3

Ich habe es versucht und gefunden:

%Vor%

Dies gilt für die bearbeitete Frage mit mehr als einer anfänglichen Zeitreihe. Aber hoffentlich wird jemand besser finden.

EDIT: Und das ist meine Funktion:

%Vor%

Funktioniert für beliebig viele Zeitreihen; -)

    
eumiro 20.10.2010, 13:09
quelle