majority judgment library php
1.0.0
Deliberate majority judgment polls ⚖.
Require it in your own project, using composer:
composer require mieuxvoter/majority-judgment
Use it:
use MieuxVoterMajorityJudgmentMajorityJudgmentDeliberator;
use MieuxVoterMajorityJudgmentModelSettingsMajorityJudgmentSettings;
use MieuxVoterMajorityJudgmentModelTallyArrayPollTally;
$tally = new ArrayPollTally([
'Proposal A' => [1, 1, 4, 3, 7, 4, 1], // amount of judgments for each grade
'Proposal B' => [0, 2, 4, 6, 4, 2, 3], // (worst grade to best grade)
]);
$deliberator = new MajorityJudgmentDeliberator();
$result = $deliberator->deliberate($tally);
// $result is a PollResultInterface
foreach($result->getProposalResults() as $proposalResult) {
// … Do something
print($proposalResult->getProposal());
print($proposalResult->getRank());
}Any object implementing PollTallyInterface may be used as input.
See the tests in test/.
composer install --dev
vendor/phpunit/phpunit/phpunit -v test