私はリストが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. Haskell - リストのリストからn個のリストを取得する
- 2. Java:ストリームソースの上位n個の要素
- 3. SQLの上位Nの値
- 4. ハッシュマップで上位10個の値を取得
- 5. LINQを使用して配列内の上位1000個の最大エントリの配列インデックス値を取得
- 6. python - タプルの最初のインデックスのリストを取得しますか?
- 7. Common Lispでリストの最初のn個の要素を取得しますか?
- 8. 各データフレーム行に対して、上位n個の値とそれらが発生する列インデックスを取得します。
- 9. PostgreSQLを使用して上位N個の値を更新する
- 10. Python/numpy:値のリストの配列位置を取得
- 11. BLAST結果の上位10個の配列を取得するBio Python
- 12. libSVMパッケージから上位n個のクラスとそれに対応する信頼レベルを取得します
- 13. インタビュー:一定期間に渡ってリストの上位N個の整数
- 14. Python/Django - オブジェクト変数の値からのインデックスでリスト値を取得
- 15. marklogicで「N」個のレコードを取得
- 16. がドロップダウンリストの上位n個のオプションを表示
- 17. ファイル内の上位n個の数字を見つける
- 18. SQLグループBY、各グループの上位N個のアイテム
- 19. グループあたりの平均上位n個のSQL Server
- 20. KNNが上位N個の隣人を見つける
- 21. スコアカウントで上位n個の投稿を選択
- 22. Pythonの:リスト内の辞書項目のインデックスを取得します
- 23. n個の値の反復
- 24. リストまたはnp.array、Pythonのn個の最大要素のインデックスの検索方法
- 25. 列Nのクロスタブベースの上位N
- 26. Python:リスト内の同じ値のインデックス
- 27. SQLクエリのヘルプ - T.aの上位N個の値。T.b、T.cでグループ化されています。
- 28. サーバー上のSVGテキストの個々の文字位置を取得する方法
- 29. Rベクトルの最後のn個のエントリを取得するショートカット
- 30. 次のN個の最近のジオポイントを取得する
誰かが最後の2人が何をしているのか説明できますか? – user1717828