Чередование двух массивов индексов numpy, по одному элементу из каждого массива

У меня есть два упорядоченных массива numpy, и я хочу чередовать их, чтобы я брал один элемент из первого массива, затем другой из второго, затем возвращался к первому -, беря следующий элемент, который больше, чем тот, который я только что взял со второго и так далее. На самом деле это массивы индексов для других массивов, и я могу работать с исходными массивами, пока операция векторизована (, но, конечно, работа с массивом индексов как с векторной операцией будет потрясающей ).

Пример (можно предположить, что пересечение массивов пусто)

a = array([1,2,3,4,7,8,9,10,17])
b = array([5,6,13,14,15,19,21,23])

Я хотел бы получить [1,5,7,13,17,19]

12
задан nickb 6 August 2012 в 11:08
поделиться