Ich werde Pandas 'Resample' und 'Rolling' jedes Mal überprüfen, weil sie ähnlich und nicht ähnlich aussehen, also werde ich sie kurz zusammenfassen.
pandas v0.20.3
DataFrame.resample(
rule,
how=None,
axis=0,
fill_method=None,
closed=None,
label=None,
convention='start',
kind=None,
loffset=None,
limit=None,
base=0,
on=None,
level=None
)
Funktion | Erläuterung |
---|---|
first | Der Wert, der der Zukunft am nächsten kommt |
last | Der Wert, der der vorherigen Richtung am nächsten liegt |
bfill | backward fill,Der der Zukunft am nächsten liegende Wert (NaN Ergänze) |
ffill | forward fill,Der Wert, der der vergangenen Richtung am nächsten kommt (NaN Ergänze) |
count | Anzahl der Werte |
unique | Anzahl der eindeutigen Werte |
max | Maximalwert |
min | Mindestwert |
mean | Durchschnittswert |
median | Median |
sum | Gesamtwert |
var | Verteilt |
std | Standardabweichung |
ohlc | Offener Preis(opning), Höchster Preis(highest),günstigster Preis(lowest)Schlusskurs(closing) |
pad | = ffill |
DataFrame.rolling(
window,
min_periods=None,
freq=None,
center=False,
win_type=None,
on=None,
axis=0,
closed=None
)
Funktion | Erläuterung |
---|---|
count | Anzahl der Werte |
max | Maximalwert |
min | Mindestwert |
sum | Gesamtwert |
mean | Durchschnittswert |
median | Median |
var | Verteilt |
std | Standardabweichung |
cov | Verteilte mitverteilte Matrix |
corr | Korrelationsmatrix |
skew | Schiefe(Dritter Moment) |
kurt | Kurtosis(Vierter Moment) |
quantile | Partitionswert |
apply | Aggregation nach ursprünglicher Funktion |
Sie können Ihre eigene Aggregation mit "rolling (). Apply ()" durchführen
--Beispiel) FIR-Filter, Filter für gleitenden Durchschnitt
import numpy as np
#Filterkoeffizient
b = np.ones(5) / 5
def f(x):
#x ist ein Array von Werten im Fenster
# x[0]Ist das älteste, x[-1]Ist der neueste Wert
#Gibt den aggregierten Wert zurück
return np.sum(b*x)
#Anwenden
series.rolling(5, center=True).apply(f)
# series.rolling(5, center=True).apply(lambda x : np.sum(b*x))Aber ok
Recommended Posts