Pythonで最大値とインデックスを取得、表示する方法【max、enumerate、numpy.argmax】の使い方 | ウルトラフリーダム

Pythonで最大値とインデックスを取得、表示する方法【max、enumerate、numpy.argmax】の使い方

本サイトでは記事内に広告が含まれています。

この記事では、Pythonでリストや配列内の最大値とそのインデックスを取得し、表示する方法について解説していきます。ポイントとしては`max`関数、`enumerate`関数、`numpy`ライブラリの`argmax`メソッドを使用することです。なお、下記の解説では完全な初心者でもわかりやすいようにあえて変数名を少々変わった名称にしております。そのため、あなた自身がご活用の際には、これらを適切な(英語表記でしっくりくるものが一般的)ものに変更してご活用くださいね。それでは詳しく見ていきましょう!

スポンサーリンク

pythonでリスト内の最大値とインデックスを取得し、表示させる(1つのみの場合)

それではまず、リスト内の最大値とインデックスを取得し、表示させる(1つのみの場合)について解説していきます。

jupyter notebookなどの各開発環境を開いて、以下コードをコピペしましょう。


# リストの最大値とそのインデックスを見つける
atari_list = [2, 5, 3, 8, 8, 1] # 例としてのリスト

# 最大値を見つける
max_value = max(atari_list)
# 最大値のインデックスを見つける
max_index = atari_list.index(max_value)

# 結果を表示
print(f'最大値: {max_value}, インデックス: {max_index}')

このコードは、リスト`atari_list`から最大値を見つけ、そのインデックスを取得し、表示するものです。`max`関数で最大値を求め、`index`メソッドでその値がリスト内で最初に現れる位置(インデックス)を見つけています。

【max, index】

pythonでリスト内の最大値とインデックスを取得し、表示させる(複数ある場合、すべてを表示させる)

続いては、リスト内の最大値とインデックスを取得し、表示させる(複数ある場合、すべてを表示させる)について解説していきます。

jupyter notebookなどの各開発環境を開いて、以下コードをコピペしましょう。


# リストの最大値とそのすべてのインデックスを見つける
atari_list = [2, 5, 3, 8, 8, 1] # 例としてのリスト

# 最大値を見つける
max_value = max(atari_list)

# 最大値のすべてのインデックスを見つける
max_indexes = [index for index, value in enumerate(atari_list) if value == max_value]

# 結果を表示
print(f'最大値: {max_value}, インデックス: {max_indexes}')

ここでは、`enumerate`関数を使ってリストの各要素とそのインデックスを取得し、リスト内の最大値と同じ値を持つすべての要素のインデックスをリストとして取得しています

【enumerate】

pythonで2次元リスト内の最大値とインデックスを取得し、表示させる(複数ある場合、すべてを表示させる)

最後に、2次元リスト内の最大値とインデックスを取得し、表示させる(複数ある場合、すべてを表示させる)について解説していきます。

jupyter notebookなどの各開発環境を開いて、以下コードをコピペしましょう。


# numpyをインポート
import numpy as np

# 2次元リスト(配列)
nijigen_list = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 10, 8]])

# 最大値を見つける
max_value = np.max(nijigen_list)

# 最大値のインデックスを見つける
max_positions = np.argwhere(nijigen_list == max_value)

# 結果を表示
print(f'最大値: {max_value}, インデックス: {max_positions.tolist()}')

このコードでは、`numpy`ライブラリの`np.array`を使って2次元リスト(配列)を作成し、`np.max`で最大値を求めています。そして、`np.argwhere`を使ってその最大値を持つ要素のインデックス(2次元配列として)を取得し、リスト形式で表示しています。これにより、2次元配列内での最大値の位置を全て見つけ出すことができます。

【numpy.argmax, numpy.argwhere】

この記事を通じて、Pythonでリストや配列内の最大値とそのインデックスを取得し、表示する基本的な方法から応用的な方法までを学ぶことができました。初心者でもわかりやすいようにコード内での変数名を少々変わった名称にしてみましたが、これを機にPythonの基本操作に慣れていただければと思います。最大値を探すという操作はデータ分析や日常のプログラミングで頻繁に使用されるため、これらのコードは非常に実用的です。さらに学習を進めて、Pythonでのプログラミングスキルを向上させましょう!

コメント

タイトルとURLをコピーしました