私はリストがa = [5,3,1,4,10]
と言っています。リスト5と10の上位2つの値のインデックスを取得する必要があります。このような場合にPythonが提供する1つのライナーはありますか?Pythonのリストの上位n個の値のインデックスを取得します
28
A
答えて
51
sorted(range(len(a)), key=lambda i: a[i])[-2:]
または
sorted(range(len(a)), key=lambda i: a[i], reverse=True)[:2]
または
zip(*sorted(enumerate(a), key=operator.itemgetter(1)))[0][-2:]
または(長いリスト用)
zip(*heapq.nlargest(2, enumerate(a), key=operator.itemgetter(1)))[0]
0
ただ、numpyの代替:
import numpy as np
[a[i] for i in np.argsort(a)[-2:]]
+0
これは与えられた配列 'a'の上位2つの値を与えます。これは、OPが求めたものではありません。 –
関連する問題
- 1. Pythonのパンダ - どのように上位n個の値を取得すると、他のすべての値
- 2. Flinkストリーミング:各タイムウィンドウの要素の上位n個を取得
- 3. Haskell - リストのリストからn個のリストを取得する
- 4. Java:ストリームソースの上位n個の要素
- 5. Python Spark-Streamingはn個の最大キーを取得します
- 6. mongodb:ドキュメントの上位x個の順位を取得する
- 7. SQLの上位Nの値
- 8. ハッシュマップで上位10個の値を取得
- 9. LINQを使用して配列内の上位1000個の最大エントリの配列インデックス値を取得
- 10. リスト内のインデックスをx個の数値に変換するpython
- 11. Common Lispでリストの最初のn個の要素を取得しますか?
- 12. python - タプルの最初のインデックスのリストを取得しますか?
- 13. 各データフレーム行に対して、上位n個の値とそれらが発生する列インデックスを取得します。
- 14. PostgreSQLを使用して上位N個の値を更新する
- 15. BLAST結果の上位10個の配列を取得するBio Python
- 16. libSVMパッケージから上位n個のクラスとそれに対応する信頼レベルを取得します
- 17. Python/numpy:値のリストの配列位置を取得
- 18. N個のオブジェクトの値を取得する
- 19. n個の行のチェックボックス値を取得する
- 20. インタビュー:一定期間に渡ってリストの上位N個の整数
- 21. コレクションの最後のN個を取得
- 22. がドロップダウンリストの上位n個のオプションを表示
- 23. ファイル内の上位n個の数字を見つける
- 24. PipelineDB、上位K個のアイテムの数を取得
- 25. N個のダイナミック入力から値を取得する方法
- 26. Pythonでは、リストのn番目のアイテムの値を取得する方法は?
- 27. グループごとの上位n個のレコードアクセス中のSQL sql
- 28. mongodbのnからn個のアイテムを取得する方法
- 29. marklogicで「N」個のレコードを取得
- 30. Python/Django - オブジェクト変数の値からのインデックスでリスト値を取得
誰かが最後の2人が何をしているのか説明できますか? – user1717828