Ids = [ i for i, v in heapq.nlargest(RN, enumerate(score_real_test), key=operator.itemgetter(1))]
これにより、リスト score_real_test の RN 最大値のインデックスが得られます。代わりに、「リスト score_real_test にあり、ブール条件 COND を満たす」RN 最大値のインデックスを取得することは可能ですか?
ID には RN インデックスが含まれている必要があります。
編集:今のところ私はこの解決策を使用していますが、それは最善の解決策ではありません:
score_real_test_2 = np.sort( [ v for i,v in enumerate(score_real_test) if pred_real_test[i] == NOVEL ] )
score_real_test_2 = score_real_test_2[len(score_real_test_2)-RN:]
large_dist_ids = [i for i in range(len(score_real_test)) if score_real_test[i] in score_real_test_2]