# cdc_copeland: Copeland Method In votesys: Voting Systems, Instant-Runoff Voting, Borda Method, Various Condorcet Methods

## Description

Candidates enter into pairwise comparison. if the number of voters who prefer a is larger than the number of voters who prefer b, then a wins b, a gets 1 point, b gets -1 point. If the numbers are equal, then both of them gets 0 point. Then, sum up each one's comparison points. For example, a wins 3 times, loses 1 time, has equal votes with 2 candidate, his score is 3 * 1 + (-1) * 1 + 0 * 2 = 2. The one gets the most points wins. Essentially, this is a way to solve ties in ordinary Condorcet method. However, there may be 2 or more winners. The other type of Copeland method is to count only the times of wins, that is, the loser in pairwise comparison gets 0 point rather than -1 point.

## Usage

 `1` ```cdc_copeland(x, allow_dup = TRUE, min_valid = 1, lose = -1) ```

## Arguments

 `x` it accepts the following types of input: 1st, it can be an object of class `vote`. 2nd, it can be a user-given Condorcet matrix, 3rd, it can be a result of another Condorcet method, which is of class `condorcet`. `allow_dup` whether ballots with duplicated score values are taken into account. Default is TRUE. `min_valid` default is 1. If the number of valid entries of a ballot is less than this value, it will not be used. `lose` the point the pairwise loser gets, should be -1 (default) or 0.

## Value

a `condorcet` object, which is essentially a list.

• (1) `call` the function call.

• (2) `method` the counting method.

• (3) `candidate` candidate names.

• (4) `candidate_num` number of candidate.

• (5) `ballot_num` number of ballots in `x`. When x is not a `vote` object, it may be NULL.

• (6) `valid_ballot_num` number of ballots that are actually used to compute the result. When x is not a `vote` object, it may be NULL.

• (7) `winner` the winners.

• (8) `input_object` the class of `x`.

• (9) `cdc` the Condorcet matrix which is actually used.

• (10) `dif` the score difference matrix. When x is not a `vote` object, it may be NULL.

• (11) `binary` win and loss recorded with 1 (win), 0 (equal) and -1 (loss).

• (12) `summary_m` times of win (1), equal (0) and loss (-1).

• (13) `other_info` a list with 2 elements, the 1st is the point the loser gets, it is equal to `lose`. The 2nd contains the scores.

## References

• Merlin, V. & Saari, D. 1996. The Copeland method: I.: Relationships and the dictionary. Economic Theory, 8(1), 51-76.

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10``` ```raw <- c( rep(c('m', 'n', 'c', 'k'), 42), rep(c('n', 'c', 'k', 'm'), 26), rep(c('c', 'k', 'n', 'm'), 15), rep(c('k', 'c', 'n', 'm'), 17) ) raw <- matrix(raw, ncol = 4, byrow = TRUE) vote <- create_vote(raw, xtype = 2, candidate = c('m', 'n', 'k', 'c')) win1 <- cdc_simple(vote) win2 <- cdc_copeland(vote) # winner is n win2 <- cdc_copeland(win1\$cdc) win3 <- cdc_copeland(win2, lose = 0) ```

votesys documentation built on May 2, 2019, 1:32 p.m.