Python NumPy / SciPy を使用した移動平均の計算
時系列分析における移動平均の有用性にもかかわらず、NumPy と SciPy はこの目的のためにスタンドアロン関数を提供すると、この省略の背後にある理論的根拠について疑問が生じます。
NumPy での移動平均の実装
NumPy で移動平均を実装するための 1 つの簡単なアプローチは次のとおりです。 np.cumsum 関数を使用して、配列の要素を累積します。結果の累積配列を適切にスライスして、移動平均を取得できます。
def moving_average(a, n=3): ret = np.cumsum(a, dtype=float) ret[n:] = ret[n:] - ret[:-n] return ret[n - 1:] / n
この方法は比較的高速で、エラーが発生しやすい複雑な解法を回避します。
不足の理由バッテリーを含む機能
移動平均の実装は一見単純であるにもかかわらず、NumPy のコア機能に移動平均が含まれていない理由は、そのような演算の特殊な性質に関連している可能性があります。 NumPy は基本的な数値演算の提供に重点を置いていますが、時系列分析などの特殊なアルゴリズムは専用パッケージに任せられることがよくあります。このアプローチにより、NumPy はコア機能を維持し、ニッチなツールによる肥大化を回避できます。
以上がNumPy には移動平均を計算するための関数が組み込まれていないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。