Ich suche nach einer elganten Spaltenformel, die eine kleine Anweisung für jede Zeile ersetzt.
Ich habe eine Tabelle mit einem Wert und einem Datum (und anderem Zeug). Die Daten sind unregelmäßig angeordnet. Ich bin auf der Suche nach einer Formel für einen gleitenden Durchschnitt des Wertes, der auf den Zeitpunkt der Messung anspricht. Dies umfasst manchmal nur zwei Werte, kann jedoch Dutzende enthalten.
Das folgende Skript funktioniert, aber das Skript muss aufgerufen werden. Ich hoffe auf eine Formel, die in der Spalte selbst gespeichert werden kann.
dt = current data table();
dt << new column ("LocalAverage", numeric);
for (ii=1, ii<=nrows(dt), ii++,
:LocalAverage[ii] = mean(:value[dt << getrowswhere(Abs(:date - :date[ii]) < 5*24*60*60)])
);
(Durchschnitt über 5 Tage)
Mir muss etwas fehlen .......
Der von mir bereitgestellte Code ist eine Spaltenformel und kein unabhängiges Skript.
Ich glaube, dass die folgende Formel funktionieren wird ... oder etwas in der Nähe davon
ckDate = :date[row()];
mean(:value[dt << getrowswhere(Abs(:date - ckDate) < 5*24*60*60)]);