Mam zestaw danych zawierający atrybuty kategoryczne (nominalne i porządkowe) i liczbowe. Chcę obliczyć macierz podobieństwa (dis) w moich obserwacjach, używając tych mieszanych atrybutów. Korzystanie z funkcji daisy() pakietu klastrów w zakresie badań, mogę łatwo dostać matrycę odmienność następująco:Pythonowy odpowiednik daisy() w pakiecie klastra z R
if(!require("cluster")) { install.packages("cluster"); require("cluster") }
data(flower)
as.matrix(daisy(flower, metric = "gower"))
używa Gower metryczną do czynienia ze zmiennymi nominalnymi. Czy istnieje odpowiednik w języku Python funkcji daisy()
w R?
A może jakakolwiek inna funkcja modułu, która umożliwia użycie metryki Gower lub coś podobnego do obliczenia macierzy podobieństwa (dis) dla zbioru danych o mieszanych (nominalnych, numerycznych) atrybutach?
dziękuję, wiesz któregokolwiek z metryki odległości box dostępnych w scikit-learn, które mogą wspólnie zajmują się zmiennych kategorycznych i liczbowych? – Rhubarb
Ja nie. Ich dokumentacja jest dobra, więc wyszukiwanie powinno szybko ujawnić wyniki, jeśli istnieje. Jednak moim podejściem byłoby zdefiniowanie mojej własnej małej funkcji odległości, która obsłużyła to, jak chciałem, i przekazanie tego do 'pdist'. W ten sposób mógłbym kontrolować względne znaczenie różnych aspektów tego obliczenia.Jeśli stało się to wolniejsze, użyłbym numby lub Cythona, by skierować implementację właśnie tej funkcji na niższym poziomie, aby przyspieszyć działanie. – ely