ホームページ >バックエンド開発 >Python チュートリアル >1D Numpy 配列で極大値と極小値を見つける方法は?

1D Numpy 配列で極大値と極小値を見つける方法は?

DDD
DDDオリジナル
2024-11-19 21:56:02981ブラウズ

How to Find Local Maxima and Minima in 1D Numpy Arrays?

Numpy を使用して 1D 配列内の極大値と極小値を見つける

1D numpy 配列内の極大値と極小値を特定することは、さまざまなアプリケーションで一般的なタスクです。隣接する要素をチェックするのは直感的なアプローチですが、Numpy はより包括的で信頼性の高いソリューションを提供します。

Numpy の argrelextrema 関数

SciPy 0.11 以降では、argrelextrema 関数は効率的に実行できます。 1D numpy 配列で極大値と極小値の両方を見つけます。 2 つの引数を取ります:

  1. array: 入力 numpy 配列。
  2. comparator: 極値を識別する基準を指定する比較関数 (np.greater または np.less など) .

使用法:

極大値を見つけるには、次を使用します。

argrelextrema(x, np.greater)

極小値を見つけるには、次を使用します:

argrelextrema(x, np.less)

出力

関数 argrelextrema は、極値に対応するインデックスの 1 次元配列を含むタプルを返します。これらのインデックスを使用して、極大値または極小値の値にアクセスできます。

例:

次の numpy 配列を考えてみましょう:

x = np.random.random(12)

極大値と極小値のインデックスの検索:

max_indices = argrelextrema(x, np.greater)[0]
min_indices = argrelextrema(x, np.less)[0]

実際の値の取得:

max_values = x[max_indices]
min_values = x[min_indices]

Numpy の argrelextrema 関数を使用すると、1D numpy で極大値と極小値を正確に識別できます。配列を使用すると、この一般的なタスクが簡素化されます。

以上が1D Numpy 配列で極大値と極小値を見つける方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。