У меня есть два массива конечных точек, которые выглядят так:
t1 = np.array([0,13,22,...,99994])
t2 = np.array([4,14,25,...,99998])
Я ищу наиболее эффективный способ создания вывода, который выглядит следующим образом:
np.array([0,1,2,3,4,13,14,22,23,24,25,...,99994,99995,99996,99997,99998])
Один из способов сделать это это:
np.array([i for a, b in zip(t1, t2) for i in range(a, b + 1)])
Это решение медленное, и я уверен, что оно все еще может быть значительно улучшено, если полностью заменить комбо zip и list compition понимание некоторыми функциями полностью в Numpy, просто я не знаю как. Ребята, можете ли вы показать мне наиболее эффективный способ сделать это?
Заранее спасибо, ребята
Код для генерации этих двух массивов:
import numpy as np
m =10000
Z = np.arange(0,10*m,10)
t1 = np.random.randint(5, size =m ) + Z
t2 =np.random.randint(5,size = m) + 5 + Z