pd.rolling_mean immer veraltet - alternativen für ndarrays
Sieht es aus wie pd.rolling_mean
ist immer veraltet ndarrays
,
pd.rolling_mean(x, window=2, center=False)
FutureWarning: pd.rolling_mean ist veraltet ndarrays und wird in einer zukünftigen version entfernt
aber es scheint der Schnellste Weg, dies zu tun, nach diese SO beantworten.
Gibt es jetzt neue Möglichkeiten, dies zu tun, direkt mit SciPy oder NumPy, dass so schnell wie pd.rolling_mean
?
- Ich verstehe immer noch nicht, eine Antwort auf die Frage "Was ist die alternative rolling_mean Funktion für ndarrays?" Dies sollte in scipy oder numpy, ohne dabei auf eine Pandabären-Funktion vorgesehen für den Einsatz auf Dataframes
Du musst angemeldet sein, um einen Kommentar abzugeben.
EDIT -- Leider, es sieht aus wie der neue Weg ist nicht annähernd so schnell:
Neue version des Pandas:
Alte version:
Sieht aus wie der neue Weg wird über Methoden der
DataFrame.rolling
Klasse (ich nehme an, du bist gemeint, daran zu denken, wie eine Artgroupby
):http://pandas.pydata.org/pandas-docs/version/0.18.0/whatsnew.html
z.B.
x
in einepd.Series
(Siehe meine Antwort mit details).versuchen, diese
Schlage ich vor, scipy.ndimage.Filter.uniform_filter1d wie in meinem Antwort auf die verlinkte Frage. Es ist auch viel schneller für große arrays:
Wenn Ihre Dimensionen homogen ist, könnten Sie versuchen, zu implementieren, die eine n-dimensionale form der Summiert Bereich Tabelle verwendet für die bidirektionalen Bilder:
Dann, in dieser Reihenfolge, könnte man:
Leider kann ich nicht wissen, ob dies effizient ist oder nicht, sondern von der gegebenen Prämisse sollte es sein.