Я пытаюсь уменьшить размер входных данных, сначала выполняя кластеризацию K-средних в R, а затем отбирая 50–100 выборок для каждого репрезентативного кластера для последующей классификации и выбора функций.
Первоначальный набор данных был разделен на 80/20, а затем 80% пошло на обучение с использованием K-средств. Я знаю, что входные данные имеют 2 столбца меток и 110 столбцов числовых переменных. Из столбца на этикетке я знаю, что существует 7 различных лекарств. Параллельно я протестировал метод локтя, чтобы найти оптимальное значение K для числа кластеров, оно составляет около 8. Я выбрал 10, чтобы иметь больше кластеров данных для выборки для нисходящего потока.
Теперь я закончил запуск модели ‹- Kmeans (), список вывода немного запутал меня в том, что делать. Поскольку мне нужно масштабировать только числовые переменные для ввода в функцию kmeans, членство в выходном кластере больше не имеет этих меток обработки. Я могу преодолеть это, добавив членство в кластере к исходной таблице обучающих данных.
Тогда для 10 центроидов, как мне узнать, что это за метки? Я не могу просто сделать
training_set$centroids <- model$centroids
И самый важный вопрос, как мне найти 100 выборок на кластер, которые близки к их соответствующему центроиду? Я видел здесь одно сообщение на Python, но ресурсов R. Вывести 50 ближайших образцов в каждый кластерный центр с помощью библиотеки scikit-learn.k-means Есть указатели?