Как бороться с этой конкретной ошибкой индекса - PullRequest
0 голосов
/ 19 сентября 2019

Я пытаюсь отфильтровать numpyarray на основе вывода (numpyarray).Вот мой код

res = pd.DataFrame({'Listing': [], 'Neighbors': []})
listi = 'LI00000F4KP4'
a = data[data.ListingID == listi]

c = np.array(data[['x','y']])

    #Building the tree    
tree = cKDTree(c)
item = data[data.ListingID == listi][['x','y']]


a,b = tree.query(item, k=20, distance_upper_bound= 5.015)
res = res.append({'Listing': listing, 'Neighbors':c[b]})

Когда я пытаюсь отфильтровать кадр данных C на основе B (C [B]), получаю ошибку индекса.IndexError: индекс 6836 выходит за пределы оси 0 с размером 6836.

a = array([[0.        , 2.55278673, 4.16013993, 4.40220405,        inf,
               inf,        inf,        inf,        inf,        inf,
               inf,        inf,        inf,        inf,        inf,
               inf,        inf,        inf,        inf,        inf]])

b = array([[   2, 3147, 6620, 1807, 6836, 6836, 6836, 6836, 6836, 6836, 6836,
        6836, 6836, 6836, 6836, 6836, 6836, 6836, 6836, 6836]])

c.shape = (6836, 2)  

Как можно устранить эту ошибку индекса.Я знаю, что проблема с индексацией C и B, но я не знаю, как ее устранить.Любая помощь будет оценена.

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