R - кластерный анализ на двоичных данных блога

У меня есть веб-данные, которые похожи на образец ниже. Он просто имеет пользователя и двоичное значение для того, щелкнул ли этот пользователь по определенной ссылке на веб-сайте. Я хотел сделать кластеризацию этих данных. Моя главная цель - найти похожих пользователей по их поведению в Интернете. Что такое хороший кластеризационный алгоритм для этого? Я пробовал k-средства, которые не работают с двоичными данными. Я также попробовал сферические K-средства skmeans(), Я хотел сделать сумму квадратов осциллографических ошибок, но я не мог понять, как получить SSE из skmeans.

   User   link1 link2 link3 link4
    abc1     0     1     1     1
    abc2     1     0     1     0
    abc3     0     1     1     1
    abc4     1     0     1     0

1 ответ

Решение

Вы можете попробовать иерархическую кластеризацию с использованием бинарной меры расстояния, как Jaccard, если "щелкнуть ссылку" асимметрична:

dat <- read.table(header = TRUE, row.names = 1, text = "User   link1 link2 link3 link4
abc1     0     1     1     1
abc2     1     0     1     0
abc3     0     1     1     1
abc4     1     0     1     0")
d <- dist(dat, method = "binary")
hc <- hclust(d)
plot(hc)

введите описание изображения здесь

(clusters <- cutree(hc, k = 2))
# abc1 abc2 abc3 abc4 
#    1    2    1    2
Другие вопросы по тегам