ホームページ  >  記事  >  バックエンド開発  >  Pythonでnumpy配列の最大値とそのインデックス付け方法を見つける

Pythonでnumpy配列の最大値とそのインデックス付け方法を見つける

不言
不言オリジナル
2018-04-17 10:49:595058ブラウズ

以下はPythonでnumpy配列の最大値を求める方法とそのインデックス付け方法についての記事です。参考になると思います。一緒に見てみましょう

リストlistではmax(list)でリストの最大値を取得でき、list.index(max(list))で最大値に対応するインデックスを取得できますが

numpy の配列のインデックスメソッド。list では利用できない where に置き換えられます

まず、配列の最大値をグローバルかつ各行と列で取得できます (最小値についても同様です)

>>> a = np.arange(9).reshape((3,3))
>>> a
array([[0, 1, 2],
  [9, 4, 5],
  [6, 7, 8]])
>>> print(np.max(a))  #全局最大
8
>>> print(np.max(a,axis=0)) #每列最大
[6 7 8]
>>> print(np.max(a,axis=1)) #每行最大
[2 5 8]

次に、最大値のインデックスを取得する where を使用します。戻り値では、前者の配列は行数に対応し、後者は列数に対応します

>>> print(np.where(a==np.max(a)))
(array([2], dtype=int64), array([2], dtype=int64))
>>> print(np.where(a==np.max(a,axis=0)))
(array([2, 2, 2], dtype=int64), array([0, 1, 2], dtype=int64))

配列内の同じ最大値。ここですべての位置が得られます

>>> a[1,0]=8
>>> a
array([[0, 1, 2],
  [8, 4, 5],
  [6, 7, 8]])
>>> print(np.where(a==np.max(a)))
(array([1, 2], dtype=int64), array([0, 2], dtype=int64))

関連推奨事項:

numpy配列の指定された行と列を取得する方法

numpyを使用して配列内の最大値と最小値

以上がPythonでnumpy配列の最大値とそのインデックス付け方法を見つけるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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