Как получить соседние элементы в Numpy Array с учетом границ?

I Хотите получить соседи определенного элемента в Numpy Array. Давайте рассмотрим следующий пример

    a = numpy.array([0,1,2,3,4,5,6,7,8,9])

, поэтому я хочу указать позицию 5 и хочу получить три соседей с обеих сторон. Это может быть сделано

   index = 5
   num_neighbor=3
   left = a[index-num_neighbor:index]
   right= a[num_neighbor+1:num_neighbor+index+1]

Приведенный выше код не заботится о границах ... Я хочу, чтобы я получаю соседей в границах массива. Для этого рассмотрим следующий пример, если указатель 1, то левый сосед является только одним элементом, который составляет 0.

Спасибо много

5
задан talonmies 16 September 2011 в 10:02
поделиться