私は今これを修正しようとしていますが、私はこの問題でどこにも行けません。python:要素の範囲に渡ってリストのリストを並べ替える
私は、各リストは0から5までの値で構成され、リストのリスト、持っている:今、私は2番目の最後など、非常に最後の要素で始まるこのリストをソートしたい
[[ 0. 0. 4. 2. 2. 2. 2. 2. 2. 2.]
[ 0. 0. 1. 2. 3. 3. 3. 3. 3. 3.]
[ 0. 0. 2. 3. 4. 4. 1. 2. 1. 2.]
[ 0. 0. 3. 4. 5. 1. 4. 4. 5. 5.]
...
[ 0. 0. 5. 3. 3. 3. 4. 3. 4. 3.]
[ 0. 0. 3. 4. 1. 1. 1. 1. 4. 4.]
[ 0. 0. 3. 4. 1. 3. 3. 3. 3. 1.]
[ 0. 0. 1. 4. 4. 5. 3. 4. 3. 1.]]
を最初にすべての方法、のようなものを得るために:私は仕事にこの要素の範囲を得ることができなかったのに対し、私はオンライン個別の列/要素を扱って見られる配列/リストの質問にソートする
[[ 0. 0. 3. 4. 1. 3. 3. 3. 3. 1.]
[ 0. 0. 1. 4. 4. 5. 3. 4. 3. 1.]
[ 0. 0. 5. 3. 3. 3. 3. 3. 4. 1.]
[ 0. 0. 2. 3. 4. 4. 1. 2. 1. 2.]
...
[ 0. 0. 3. 4. 1. 1. 1. 1. 4. 4.]
[ 0. 0. 3. 3. 3. 4. 4. 4. 4. 4.]
[ 0. 0. 4. 4. 3. 4. 5. 5. 1. 5.]
[ 0. 0. 3. 4. 5. 1. 4. 4. 5. 5.]]
すべての返信を。結局のところ有効な唯一の解決策は次のとおりです。
array = array[np.lexsort((array[:,-9], array[:,-8], array[:,-7], array[:,-6], array[:,-5], array[:,-4], array[:,-3], array[:,-2], array[:,-1]))]
これは非常に醜いだけでなく、あまり柔軟ではありません。このコマンドをループまたは変数で置き換える試みはすべて悲惨に失敗しました。
ご意見をいただければ幸いです。
これは正しい方法です。 'ソート済み(LoL、key = lambda l:l [:: - 1])'の不規則なバージョン。ありがとう – dawg