Mam pół-małą macierz funkcji binarnych o wymiarze 250k x 100. Każdy wiersz to użytkownik, a kolumny to binarne „tagi” niektórych zachowań użytkownika, np. „Like_cats”.
user 1 2 3 4 5 ...
-------------------------
A 1 0 1 0 1
B 0 1 0 1 0
C 1 0 0 1 0
Chciałbym dopasować użytkowników do 5-10 klastrów i przeanalizować obciążenia, aby zobaczyć, czy potrafię interpretować grupy zachowań użytkowników. Wydaje się, że istnieje wiele metod dopasowywania klastrów do danych binarnych - co naszym zdaniem może być najlepszą strategią dla tych danych?
PCA
Tworzenie macierzy podobieństwa Jaccard , dopasowanie hierarchicznego klastra, a następnie użycie górnych „węzłów”.
Mediany K.
K-medoidy
Proximus ?
Agnieszka
Do tej pory odnosiłem pewne sukcesy w stosowaniu klastrowania hierarchicznego, ale tak naprawdę nie jestem pewien, czy jest to najlepsza droga…
tags = read.csv("~/tags.csv")
d = dist(tags, method = "binary")
hc = hclust(d, method="ward")
plot(hc)
cluster.means = aggregate(tags,by=list(cutree(hc, k = 6)), mean)