0
2

More than 3 years have passed since last update.

Pythonでリストのn番目に大きい・小さい値のインデックスの取得

Posted at

pythonでリスト内の値のn番目に大きい値、小さい値を知りたかったのですが、
見つけた記事が求めるものと少し違ったので、自分なりにこうじゃないかって部分を含めてかんたんにまとめました。

まず、元の記事と同様に以下のようなリストがあったとします。

a=[1,5,4,3,2]

昇順

このリストの小さい順(昇順)のインデックスを取得する場合は

>>> A=np.array(a)
>>> A.argsort()
array([0, 4, 3, 2, 1])

となる。

降順

次に、大きい順(降順)のインデックスを取得する場合は

>>> A=np.array(a)
>>> len(A)-1-A.argsort()
array([4, 0, 1, 2, 3])    

もとの記事は降順をスライスをつかって実装していたのだが、自分の求める仕様と少し違ったのでこっちのやり方もあるよ、という感じでやってみました。

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2