Я запутанные с до того, что речь идет?
Но первые некоторые математические:
5 star - 300 people
4 star - 45 people
3 star - 100 people
2 star - 99 people
1 star - 10 people
Всего 554 человек
можно легко вычислить распределение голосов в процентах к звездам, препятствует проверке подразделения:
[count of people]/[total of people] => ratio of people
ratio of x * 100 => % of x
i.e:
(300/554) * 100 = 54.1516245487 % of people
и вычислить для всех
5 star - 300 people - 54.15 % of votes
4 star - 45 people - 8.12 % of votes
3 star - 100 people - 18.05 % of votes
2 star - 99 people - 17.87 % of votes
1 star - 10 people - 1.80 % of votes
ошибки из-за округления: 100 - (сумма (%) = 99,99) = 0,01, так хорошо, чтобы раунду
однако это не то, что эти цифры вы пришли с похожими взглядами. Это, вероятно, потому, что код, который вы используете, не показывает процент людей, которые голосовали за что-то, но вместо этого он показывает оценку распределения голосов, а не как они.
Многие рейтинговые системы фактически подсчитывают голоса с различными весами, в зависимости от существующего распределения или приравнивают голоса по культурам.
Я датский, поэтому я использую эту культуру ссылки, например. Возьмем, к примеру, Сельская Дания. В этой культуре никто не использует ставки 5 или 1, если только вещь, которая оценивается, очень необычайно плохая или хорошая. На самом деле это также более вероятно, чтобы получить 1, чем 5. - но если вы получаете 2 или 4, не «близко к 3» Это на самом деле очень плохо или очень хорошо ..
В Urban Denmark вы получите больше выхода и легко проголосуете за 5, что является довольно посредственной работой. Также 1 для чего-то только потому, что у вас был плохой день.
Так что для обычного, но хорошего шоу, (следует оценить среднее 4) это было бы два распределения:
Rural:
5 stars - 1 people
4 stars - 3 people
3 stars - 10 people
2 stars - 5 people
1 stars - 1 people.
Urban:
5 stars - 4 people
4 stars - 5 people
3 stars - 5 people
2 stars - 3 people
1 stars - 3 people.
уведомления культурного разница четко выражена в этих составленных результатах.
Я не делаю это с его помощью вы можете прочитать следующее: http://www.harzing.com/download/respstyles.pdf
Таким образом, разработчику необходимо учитывать, какой стиль ответа должны компенсироваться рейтингами.
Я мог бы легко взвесить голоса сельских жителей и позволить 1 человеку, который осмелился нажать 5 звезд, получить дополнительный вес в голосах, а также дать людям, которые проголосовали 3 звезды, получить меньше очков. Это сделало бы два результата более похожими и облегчило бы для городского жителя сравнить результаты.
Но это действительно правильно. ? (выбрать городские голоса как норму и изменить другие, чтобы соответствовать), будет ли противоположный аргумент столь же хорошим?
весить 5 и 1 меньше в городских голосах и еще 3, чтобы сделать его более сопоставимым для сельского населения?
-
в вашем случае, кажется, что результаты переносятся веса мы не можем увидеть, как были найдены веса, но мы можем вычитать что-то из них.
вес:
5 star - 40%/54.15% ~= 0.74
4 star - 10%/8.12% ~= 1.21
3 star - 21%/18.05% ~= 1.16
2 star - 20%/17.87% ~= 1.18
1 star - 9%/1.8% ~= 5
поэтому в данном случае отрицательный голос оценивается с большим весом, и положительным голосованием, дается меньше Wight.
Я бы ожидал, что сумма весов будет равна 1, но это не так, поэтому это может быть результатом ручной настройки результатов рейтингов, желаемого распределения (коммерческих интересов) или, возможно, просчет с вашей стороны.
Я не понимаю: есть ли у вас вопрос о математическом алгоритме или о том, как его развивать? –
Это не проблема программирования. Это просто математика. 300/554 человека проголосовали 5 звезд. Это означает, что 54,15% всех избирателей оценили это 5 звезд. И так далее для других рейтингов –
в чем вопрос? – FeedTheWeb