私はPythonのNumpyにMATLABコードを移植しています。 MATLAB(実際オクターブ)ではMATLAB sort()とNumpy argsort() - 結果のマッチング方法は?
、私のような何かをしている:だからnumpyの中で、私は
>> someArr = [9, 8, 7, 7]
>> [~, ans] = sort(someArr, 'descend')
ans =
1 2 3 4
をやってる:
>>> someArr = np.array([9, 8, 7, 7])
>>> np.argsort(someArr)[::-1]
array([0, 1, 3, 2])
をnumpyの上0, 1, 3, 2
ながら、私はMATLABで1, 2, 3, 4
を得て、 Numpyに0, 1, 2, 3
が必要です。
私はそれが各機能で使用されているソートアルゴリズムのためだと信じていましたが、チェックしたところ、どちらも「クイックソート」(hereとhere参照)を使用しているようです。
は、どのように私はMATLABのいずれかにnumpyののソリューションを一致させることができますか?
達成しようとしていることは何ですか?ゼロインデックス作成から1インデックス作成に進むことができます。逆の順序はソートアルゴリズムでは起こりえないことは期待できません。 – CodeMonkey
申し訳ありませんが、私は自分の質問を編集しました。 0インデックスから1インデックスまでは私にとって重要ではなく、インデックスの順序だけです。 – galah92