IndexError: индекс 8 выходит за пределы оси 1 с размером 8 - PullRequest
0 голосов
/ 21 июня 2019

Я делаю проект об Иерархической кластеризации, и я пишу некоторый код, где я выполняю AgglomerativeClustering с каждой возможной комбинацией 'affinity' и 'linkage', которые являются двумя параметрами, которые вы можете установить. Проблема возникает, когда я пытаюсь подогнать данные к алгоритму. Набор данных имеет следующую форму (1300, 8) и был проиндексирован с помощью 'index_col = 0', чтобы избавиться от первого столбца, который был бесполезным (после удаления ненужного столбца количество столбцов увеличивается до 8)

Цикл for для связывания на самом деле работает нормально, если запустить его отдельно, проблема касается сходства.

dataset = #csv file
aff = ["l1", "l2", "manhattan", "cosine", "precomputed", "euclidean"]
link = ["complete", "average", "single"]

for a in aff:
    for l in link:
        ds=dataset
        ac_tune=AgglomerativeClustering(n_clusters=5, affinity=a, linkage=l)
        ac_tune.fit(ds)

ошибка следующая:

IndexError: index 8 is out of bounds for axis 1 with size 8

1 Ответ

0 голосов
/ 21 июня 2019

Сбой при попытке выполнить «предварительно вычисленную» привязку.Для этого параметра набор данных должен быть матрицей расстояний, а не необработанными данными.

https://scikit -learn.org / stable / modules / generate / sklearn.cluster.AgglomerativeClustering.html

...