Je vais vérifier les pandas «resample» et «rolling» à chaque fois car ils se ressemblent et ne se ressemblent pas, donc je vais les résumer brièvement.
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
)
une fonction | La description |
---|---|
first | La valeur la plus proche du futur |
last | La valeur la plus proche de la direction passée |
bfill | backward fill,La valeur la plus proche du futur (NaN Remplir) |
ffill | forward fill,La valeur la plus proche de la direction passée (NaN Remplir) |
count | Nombre de valeurs |
unique | Nombre de valeurs uniques |
max | Valeur maximum |
min | valeur minimum |
mean | Valeur moyenne |
median | Médian |
sum | Valeur totale |
var | Distribué |
std | écart-type |
ohlc | Prix ouvert(opning), Le prix le plus élevé(highest),prix le plus bas(lowest),le dernier prix(closing) |
pad | = ffill |
DataFrame.rolling(
window,
min_periods=None,
freq=None,
center=False,
win_type=None,
on=None,
axis=0,
closed=None
)
une fonction | La description |
---|---|
count | Nombre de valeurs |
max | Valeur maximum |
min | valeur minimum |
sum | Valeur totale |
mean | Valeur moyenne |
median | Médian |
var | Distribué |
std | écart-type |
cov | Matrice co-distribuée distribuée |
corr | Matrice de corrélation |
skew | asymétrie(Troisième moment) |
kurt | kurtosis(Quatrième moment) |
quantile | Valeur de partition |
apply | Agrégation par fonction d'origine |
Vous pouvez faire votre propre agrégation avec rolling (). Apply ()
--Exemple) Filtre FIR, filtre de moyenne mobile
import numpy as np
#Coefficient de filtre
b = np.ones(5) / 5
def f(x):
#x est un tableau de valeurs dans la fenêtre
# x[0]Est le plus ancien, x[-1]Est la valeur la plus récente
#Renvoie la valeur agrégée
return np.sum(b*x)
#Application
series.rolling(5, center=True).apply(f)
# series.rolling(5, center=True).apply(lambda x : np.sum(b*x))Mais d'accord
Recommended Posts