Использование list.index
:
ind = [3, 2, 6, 5, 4, 1]
sorted(X, key=lambda x : ind.index(x) if x in ind else -1)
Выход:
[nan,
nan,
nan,
nan,
3,
...
1,
1,
1]
Если вы хотите, чтобы nan
пришел наконец:
last = len(ind)
sorted(X, key=lambda x : ind.index(x) if x in ind else last)
Выход:
[3,
3,
...
1,
1,
nan,
nan,
nan,
nan]