ホームページ > バックエンド開発 > Python チュートリアル > SciPy の「argrelextrema」関数を使用して、1D Numpy 配列の極大値と極小値を効果的に検出するにはどうすればよいでしょうか?

SciPy の「argrelextrema」関数を使用して、1D Numpy 配列の極大値と極小値を効果的に検出するにはどうすればよいでしょうか?

Susan Sarandon
リリース: 2024-11-16 07:04:02
オリジナル
592 人が閲覧しました

How can SciPy's `argrelextrema` function be used to effectively detect local maxima and minima in 1D Numpy arrays?

SciPy を使用した 1D Numpy 配列での極値の検出

1D 数値配列での極大値と極小値の検索は、データ内の一般的なタスクです分析。単純化したアプローチには要素を隣接要素と比較することが含まれる可能性がありますが、一般的な科学計算ライブラリの一部として確立されたアルゴリズムを使用することをお勧めします。

そのようなライブラリの 1 つが SciPy です。これは、1D で局所的な極値を見つけるための argrelextrema 関数を提供します。配列。この関数は最大値と最小値の両方で機能するため、多用途のソリューションになります。使用方法は次のとおりです。

import numpy as np
from scipy.signal import argrelextrema

# Example 1D array
x = np.random.random(12)

# Detect local maxima
maxima_indices = argrelextrema(x, np.greater)

# Detect local minima
minima_indices = argrelextrema(x, np.less)
ログイン後にコピー

argrelextrema 関数は、局所極値のインデックスを含む配列を含むタプルを返します。これらは入力配列内の単なるインデックスであり、実際の値ではないことに注意してください。対応する値を取得するには、次を使用します。

maxima_values = x[maxima_indices[0]]
minima_values = x[minima_indices[0]]
ログイン後にコピー

便宜上、SciPy は最大値と最小値を個別に見つけるためのスタンドアロン関数 argrelmax および argrelmin も提供します。

以上がSciPy の「argrelextrema」関数を使用して、1D Numpy 配列の極大値と極小値を効果的に検出するにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート