Seite 1 von 1

Moving Average mit if condition

Verfasst: Mittwoch 25. Mai 2022, 09:51
von juliamib
Hallo, ich habe einen Satz Daten in einem Dataframe, in dem die Werte in jeder Spalte einen(konstanten) Endwert annehmen. Um den herauszufinden, habe ich einen gleitenden Mittelwert eingeführt. Die gleitenden Mittelwerte, die sich nicht mehr als 10% vom vorherigen unterscheiden, sollen einen gemeinsamen Mittelwert bilden.
Bsp:

index |cloumn 1 |column 2
1 | 20 | 21
2 | 23 | 23.2
3 | 23.5 | 23.8
4 | 23.9 | 24.2
5 | 24.3 | 24.4
6| 24.5|24.7
8|24.8|24.9
9|25|25
10|25|25
11|25|25.1
12|25.1|24.9 etc. ab jetzt bleiben die Werte ungefähr um 25

Code: Alles auswählen

df['column1'] = df['column1'].tail(n=6)
df['column1'] = df['column1'].rolling(3).mean()
So habe ich erstmal den gleitenden Mittelwert bestimmt.
Jetzt möchte ich mit

Code: Alles auswählen

df['column1'] = df[(df.value > 0.9*n_zuletzt_gemittelt)
Ich schaffe es aber nicht "n_zuletzt_gemittelt" vernünftig zu definieren...

Re: Moving Average mit if condition

Verfasst: Mittwoch 25. Mai 2022, 18:25
von Sirius3
Suchst Du nach `diff`?