Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Funkcje wykorzytywane w rankingach, Pytanie dotyczy funkcji używanych w rankingach a nie funkcji sortujący
marcin1973
post 24.07.2007, 21:39:03
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 24.07.2007

Ostrzeżenie: (0%)
-----


Zrobiłem stronę na której możliwe jest ocenianie płyt, a teraz chciałbym dodać do niej rankingi płyt ze względu na np. rok wydania albo gatunek. Zastanawiam się, jak najobiektywniej porównywać takie płyty.

Oczywiście średnia ocen dobrze opisuje daną płytę ale do ranking się nie nadaje, bo jak np. porównać dwie płyty, które zostały ocenione w taki sposób:
1. przez 1 osobę na 4.5
2. przez 50 osób z średnią 4.0 questionmark.gif

Oczywiste jest, że wyżej w rankingu powinna być płyta oceniona na 4.0 przez 50 osób niż przez jedną na 4.5 - średnia takiej możliwości nie zakłada.

Mam już funkcję, która na podstawie ilości oddanych głosów i średniej (a właściwie drugą zmienną jest suma), taki ranking tworzy ale nie jestem z niej tak do końca zadowolony.

Ciekaw jestem z jakich funkcji Wy korzystacie? Są może takie funkcje dostępne w MySql albo PHP??

------------------------------------
www.progrock.org.pl
Go to the top of the page
+Quote Post
Darti
post 24.07.2007, 23:13:04
Post #2





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

Ostrzeżenie: (0%)
-----


Możesz zastosować średnią windsorską, czyli wywalić najmniejsze i największe oceny (jak w jeździe figurowej na lodzie wywala się najmniejszą i największą notę) lub do generowania notowań używać albumów, które mają więcej niż ileś-tam ocen (np 5).


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
marcin1973
post 25.07.2007, 09:19:26
Post #3





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 24.07.2007

Ostrzeżenie: (0%)
-----


Myslalem o tym ale to nadal nie zdaje egz - wywalic tylko pojedyncze oceny czy podwojne tez, a jesli podwojne nie to nadal pozostaje ten sam problem czy ocena dwoch osob na 4.5 jest tak samo miarodajna jak powiedzmy: 50 osob z srednia 4.4 questionmark.gif

Znalazłem kilka funkcji ale szukam takiej, z ktorej bylbym naprawde zadowolony :-(

Przyklad: f(x,y) = x (logarytm(y)+1) , gdzie x - średnia ocen, y - ilosc oddanych glosow.
Go to the top of the page
+Quote Post
prond
post 27.07.2007, 07:16:27
Post #4





Grupa: Zarejestrowani
Postów: 254
Pomógł: 10
Dołączył: 8.11.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


A moze tak:
n1 - ilosc wszystkich ocen o warosci 1
n2 - ilosc wszystkich ocen o warosci 2
...

n1,1 - ilosc ocen o warosci 1 oddanych na album 1
n2,1 - ilosc ocen o warosci 2 oddanych na album 1
...


ocena albumu #1 : [(n1,2/n1)*1 + (n2,1/n2)*2 + ....]/[(n1,2/n1)+(n2,1/n2)+...]


--------------------
--------------------------------------------------------------------------------
weblog.axent.pl
--------------------------------------------------------------------------------
Go to the top of the page
+Quote Post
marcin1973
post 28.07.2007, 18:01:15
Post #5





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 24.07.2007

Ostrzeżenie: (0%)
-----


Wygląda ciekawie, chociaż (na pierwszy rzut oka) pewnie przy założeniu, że album tym lepszy, im mniejszą liczbą okaże się to wyrażenie. Mam też wrażenie, że w ocenie albumy powinno być n1,1 , n2,1 ,...

Cytat(prond @ 27.07.2007, 08:16:27 ) *
A moze tak:
n1 - ilosc wszystkich ocen o warosci 1
n2 - ilosc wszystkich ocen o warosci 2
...

n1,1 - ilosc ocen o warosci 1 oddanych na album 1
n2,1 - ilosc ocen o warosci 2 oddanych na album 1
...
ocena albumu #1 : [(n1,2/n1)*1 + (n2,1/n2)*2 + ....]/[(n1,2/n1)+(n2,1/n2)+...]


poza tym tego typu funkcja nie nadawałaby się do wykorzystanie w moim przypadku dlatego, że baza danych przechowuje tylko sumę głosów i ich liczbę bez rozbicia na konkretne głosowania.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 15:07