Этот сайт использует Яндекс.Метрику для анализа посещаемости. Подробнее
Python и AI в Excel

Оптимизация маршрута с помощью K-Means кластеризации в Python и Excel

forest_paw 06.09.2025 28

Оптимизация маршрута с помощью K-Means кластеризации в Python и Excel

Использование Python в Excel для K-Means кластеризации открывает новые возможности для анализа и оптимизации данных, таких как сложные географические маршруты. Этот метод позволяет группировать схожие точки и строить эффективные пути.

Столкнувшись с задачей виртуального посещения 146 локаций, я обнаружил, что простой сортировки по координатам недостаточно — маршрут оказался неэффективным и составлял 124 000 миль.

Диаграмма рассеяния, показывающая неоптимальный маршрут, петляющий между полушариями.
Диаграмма рассеяния, показывающая неоптимальный маршрут, петляющий между полушариями.

Пошаговая инструкция по кластеризации K-Means в Excel

  1. Подготовьте данные: Убедитесь, что ваши географические координаты (широта и долгота) находятся в отдельных столбцах таблицы Excel.
  2. Запустите Python в Excel: Перейдите на вкладку «Формулы» и выберите «Вставить Python». В появившейся ячейке введите код для кластеризации.
    from sklearn.cluster import KMeans
    import pandas as pd
    # df - ваш DataFrame с координатами
    kmeans = KMeans(n_clusters=6, random_state=0).fit(df[['Latitude', 'Longitude']])
    df['Cluster'] = kmeans.labels_
  3. Экспериментируйте с количеством кластеров: Ключевой параметр — n_clusters. Начните с пробного значения (например, 6), визуализируйте результат и корректируйте число для получения логичных групп.
    Пример кода Python для K-Means кластеризации в Excel.
    Пример кода Python для K-Means кластеризации в Excel.
  4. Получите и проанализируйте результат: После выполнения кода в DataFrame добавится столбец с номером кластера (от 0 до 5). Выведите обновлённый DataFrame в ячейку Excel, просто указав df.
    Локации, сгруппированные в шесть кластеров.
    Локации, сгруппированные в шесть кластеров.
    Исходный набор данных с добавленным столбцом номера кластера.
    Исходный набор данных с добавленным столбцом номера кластера.
  5. Оптимизируйте маршрут внутри кластеров: Используйте макрос или алгоритм (например, поиск ближайшего соседа) для построения оптимального пути внутри каждой группы, а затем соедините маршруты между кластерами.

Результат и ключевые советы

Применение этого подхода позволило сократить общий маршрут с 124 000 до 86 000 миль — значительная оптимизация для логистических задач.

Сравнение исходного и оптимизированного маршрута после кластеризации.
Сравнение исходного и оптимизированного маршрута после кластеризации.

Профессиональный совет: Хотя код можно писать и в строке формул, для работы с Python в Excel настоятельно рекомендуется использовать встроенный Python Editor — он предлагает подсветку синтаксиса, автодополнение и лучший обзор всего кода (см. «#66 Просмотр всего кода Python в редакторе»).

Заключение

K-Means кластеризация через Python в Excel — это мощный инструмент не только для анализа клиентов или сегментации рынка, но и для решения практических оптимизационных задач, таких как планирование маршрутов. Экспериментируйте с параметрами и визуализируйте результаты для достижения наилучшего эффекта.

Поделиться:

Похожие статьи

Анализ тональности текста с помощью Copilot и Python в Excel
Читать
Python Editor в Excel: как просматривать и редактировать код, сгенерированный Copilot
Читать
Создание 10 визуализаций с помощью функции Think Deeper в Excel Copilot
Читать

Мы используем cookies для улучшения работы сайта. Продолжая использовать сайт, вы соглашаетесь с политикой использования cookies.