Создать новый массив с элементами массива / суммами, установленными двумя другими массивами в Python - PullRequest
2 голосов
/ 10 февраля 2012

У меня есть два массива в Python (numpy массивы):

a=array([5,7,3,5])
b=array([1,2,3,4])

и я хочу создать третий массив с каждым элементом из b, появляющимся a раз в новом массиве, как:

c=array([1,1,1,1,1,2,2,2,2,2,2,2,3,3,3,4,4,4,4,4])

Существует ли быстрый, numPythonic способ сделать это с минимумом циклов? Мне нужно использовать эту операцию тысячи раз в цикле над довольно большим массивом, поэтому я хотел бы, чтобы она была максимально быстрой.

Cheers, Mike

1 Ответ

5 голосов
/ 10 февраля 2012

Я верю повтор это то, что вы хотите:

c = repeat(b, a)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...