Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Funkcje wykorzytywane w rankingach
Forum PHP.pl > Forum > Bazy danych > MySQL
marcin1973
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
Darti
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).
marcin1973
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.
prond
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)+...]
marcin1973
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.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.