НачатьНачать бесплатно

Извлечение типов рёбер

В этом упражнении вы сопоставите идентификаторы клиентов из датафрейма клиентов со списком рёбер, чтобы определить, является ли каждое ребро «churn», «non-churn» или смешанным. С помощью функции match() вы добавите в список рёбер два столбца.

  1. fromLabel — статус оттока для столбца from
  2. toLabel — статус оттока для столбца to

Команда match(x, y) возвращает вектор с позициями элементов x в y. На рисунке выше match(edgeList$from, customers$id) равно 1,1,1,2,2. Например, четвёртая строка в edgeList$from — клиент с идентификатором 393 — является вторым элементом в customers$id. Следовательно, метка оттока этого клиента — customers[2,2], то есть 0. Аналогично, метка оттока для всех записей в edgeList$from вычисляется как customers[match(edgeList$from, customers$id),2].

Это упражнение является частью курса

Прогнозная аналитика на основе сетевых данных в R

Посмотреть курс

Инструкции к упражнению

  • Добавьте в датафрейм edgeList столбец FromLabel с метками узлов from: для этого сопоставьте customers$id с edgeList$from и извлеките значения customers$churn.
  • Сделайте то же самое для рёбер to и назовите этот столбец ToLabel.
  • Добавьте в датафрейм edgeList столбец edgeType, равный сумме столбцов FromLabel и ToLabel.
  • Воспользуйтесь функцией table(), чтобы посмотреть количество рёбер каждого типа.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Add the column edgeList$FromLabel
edgeList$FromLabel <- customers[match(edgeList$___, customers$___), 2]
 
# Add the column edgeList$ToLabel
edgeList$ToLabel <- customers[___(___, ___), 2]
 
# Add the column edgeList$edgeType
edgeList$edgeType <- edgeList$___ + edgeList$___
 
# Count the number of each type of edge
___(edgeList$edgeType)
Редактировать и запускать код