Помогите придумать формулу ранжирования

D
На сайте с 28.06.2008
Offline
1114
1094

Рейтинг - стандартные 5 звезд.

Есть ТОП 3 лучших.

Есть некая абстрактная организация, за которую голосуют от 1 до 5. Задача построить рейтинг этих организаций. Но нужно как то учитывать кол-во проголовавших. Ведь будут ситуации когда одна организация будет иметь 100 голосв и суммарный рейтинг 4,9, к примеру, а вторая 1 голос с рейтингом 5. В итоге суммарный рейтинг у второй организации будет выше, но ставить на первое место не правильно. Вот и нужно как то придумать формулу, учитывающую не только суммарный рейтинг но и кол-во проголосовавших.

Для наглядности вот вам пример:

1. 1 голос , суммарный рейтинг = 5

2. 5 голосов, суммарный рейтинг = 3

3. 20 голосов, суммарный рейтинг = 4,2

4. 150 голосов, суммарный рейтинг = 3,7

5. 500 голосов, суммарный рейтинг 1

По правильной логике топ должен быть такой:

№ 3, 4, 2*, 1*, 5 (на счет позиций помеченных звездочкой уже сомневаюсь)

G
На сайте с 22.09.2007
Offline
161
#1

я делал так: ограничивал в топе учасников с минимальным необходимым кол-вом голосов, т.е. отображать только тех, за которых проголосовало 100 и больше, среди них уже по среднему.

главное выбрать правильное значение этого минимума, но это уже на практике подбирается.

D
На сайте с 28.06.2008
Offline
1114
#2
gruz_:
я делал так: ограничивал в топе учасников с минимальным необходимым кол-вом голосов, т.е. отображать только тех, за которых проголосовало 100 и больше, среди них уже по среднему.
главное выбрать правильное значение этого минимума, но это уже на практике подбирается.

Это была одна из первых мыслей что пришла в голову, но пока пробую найти более идеальный вариант. По идее нужен некий коэффицент для кол-ва проголовавших.

---------- Добавлено 26.02.2016 в 19:44 ----------

Вот ответ на мой вопрос - https://habrahabr.ru/company/darudar/blog/143188/

D.iK.iJ
На сайте с 26.05.2013
Offline
239
#3

Я бы за каждого проголосовавшего добавлял к рейтингу, например, 0,0001 и учитывал в сортировке. А выводил только целое число.

Адаптивный дизайн в 2 строчки ( https://dikij.com/wm/adaptaciya-saytov.php ). + Принимаю заказы любой сложности ( https://searchengines.guru/ru/forum/926323 ). 💎 Еще я делаю классные кулоны с опалами ( https://mosaicopal.ru/ ).
G
На сайте с 22.09.2007
Offline
161
#4
Dram:

Вот ответ на мой вопрос - https://habrahabr.ru/company/darudar/blog/143188/

спасибо за ссылку, не задумывался раньше сильно про рейтинг материалов на сайте, выбрал из комментариев себе попроще в реализации, буду пробовать этот:

Т.е. было среднее арифметическое = (сумма всех оценок) / (количество оценок)
Стало (для пятибальной системы) взвешенное среднее = (сумма всех оценок + 3n) / (число оценок + n)
Alex Klo
На сайте с 15.06.2006
Offline
304
#5

средневзвешенное вам в помощь (Как в Excel рассчитать средневзвешенное значение), ну или медиана

gruz_:
я делал так: ограничивал в топе учасников с минимальным необходимым кол-вом голосов, т.е. отображать только тех, за которых проголосовало 100 и больше, среди них уже по среднему.
главное выбрать правильное значение этого минимума, но это уже на практике подбирается.

это для прогулявших математику... :) и которым не важна точность и полнота оценок...

Проверка и мониторинг позиций сайта ( http://www.topvisor.ru/?inv=1520 ) Продвигаю сайты http://climat-nw.ru/conditioner-installation/ http://www.aircom-spb.ru/service/montaj/
D
На сайте с 28.06.2008
Offline
1114
#6
Alex Klo:
средневзвешенное вам в помощь

Попробовал для примеров из 1 поста - близко не то...

Попробовал эту формулу, найденную там же в комментах

n выставил 10 - в итоге рейтинг получается правильный и справедливый. Буду ее использовать. Тем более когда даже Кинопоиск ее использует http://www.kinopoisk.ru/top/#formula

G
На сайте с 22.09.2007
Offline
161
#7
Dram:
n выставил 10 - в итоге рейтинг получается правильный и справедливый. Буду ее использовать. Тем более когда даже Кинопоиск ее использует http://www.kinopoisk.ru/top/#formula

а как быть с 7.2341, это ведь - среднее значение рейтинга всех фильмов (сейчас: 7.2341)

для каждой системы рейтинга (набора данных) это число разное, нужно вродебы своё вставлять если я верно понял.

D
На сайте с 28.06.2008
Offline
1114
#8

7.24 использовать для 10-ти бальной шкалы,если у вас 5-ти бальная поиграйтесь с 4,5 (плюс/минус).

Нужны живые тесты для каждого конкретного случая.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий