Article View: pl.comp.lang.python
Article #27485Re: sortowanie zgodnie z odlegloscia
From: sdh
Date: Tue, 25 May 2010 14:02
Date: Tue, 25 May 2010 14:02
29 lines
2603 bytes
2603 bytes
> > mam liste obiektow oraz funkcje "porownaj(a,b)", ktora dla danych > > dwoch obiektow a i b zwraca wartosc 'odleglosci' miedzy nimi. jesli > > 'odleglosc' rowna sie 0 to znaczy, ze sa one identyczne (wg jakiejś > > tam hierarchii). ale w rzeczywistosci wartosc odleglosci bedzie sie > > wahac w zakresie 1-kilkadziesiat. > > > pytanie: jak posortowac ta liste tak, aby elementy (obiekty) > > najblizsze sobie (najnizsza 'odleglosc' w rozumieniu porownaj(a,b)) > > znalazly sie kolo siebie na liscie? > > Nie posortować, a poklastrować. Robi się macierz odległości, wylicza > jej wektory własne, redukuje jej stopień do liczby klastrów które > chcesz mieć i gotowe. Nie pytaj mnie o szczegóły, to ten wykład miałem > pare lat temu. > > Tutaj możesz zacząć szukać od strony matematycznej:http://en.wikipedia.org/wiki/Cluster_analysis > A pythonowe narzędzia znajdziesz w SciPyhttp://docs.scipy.org/doc/scipy/reference/linalg.html > > Update: jest chyba nawet gotowe rozwiązanie.http://code.google.com/p/scipy-cluster/ > Ciebie interesuje normal euklidesowa. Dzieki! Ktory z algorytmow (i dlaczego?) powinienem wykorzystac? http://docs.scipy.org/doc/scipy/reference/cluster.hierarchy.html tak jak wspominalem, myslalem o the average/UPGMA algorithm
Technical Details
Message-ID:
<c242907f-f0aa-4d8b-b118-dc884aa845bb@q23g2000vba.googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!newsfeed00.sul.t-online.de!t-online.de!border2.nntp.dca.giganews.com!nntp.giganews.com!postnews.google.com!q23g2000vba.googlegroups.com!not-for-mailReferences:
<5f71e755-08cd-4c40-8201-205b22a5d80f@40g2000vbr.googlegroups.com> <dd1d2997-970d-48cf-85a2-028b144178ae@f13g2000vbm.googlegroups.com>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!newsfeed00.sul.t-online.de!t-online.de!border2.nntp.dca.giganews.com!nntp.giganews.com!postnews.google.com!q23g2000vba.googlegroups.com!not-for-mail From: sdh <staszekdh@gmail.com> Newsgroups: pl.comp.lang.python Subject: Re: sortowanie zgodnie z odlegloscia Date: Tue, 25 May 2010 07:02:28 -0700 (PDT) Organization: http://groups.google.com Lines: 35 Message-ID: <c242907f-f0aa-4d8b-b118-dc884aa845bb@q23g2000vba.googlegroups.com> References: <5f71e755-08cd-4c40-8201-205b22a5d80f@40g2000vbr.googlegroups.com> <dd1d2997-970d-48cf-85a2-028b144178ae@f13g2000vbm.googlegroups.com> NNTP-Posting-Host: 84.56.157.230 Mime-Version: 1.0 X-Trace: posting.google.com 1274796148 30185 127.0.0.1 (25 May 2010 14:02:28 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Tue, 25 May 2010 14:02:28 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: q23g2000vba.googlegroups.com; posting-host=84.56.157.230; posting-account=X07ftgoAAAC2AM_F7qZf5f3y3bIp7C7q User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.0.17) Gecko/2009122200 SUSE/3.0.17-0.1.1 Firefox/3.0.17,gzip(gfe) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit