Learn R Programming

SciencesPo (version 1.3.9)

highestAverages: Highest Averages Methods of Allocating Seats Proportionally

Description

Computes the highest averages method for a variety of formulas of allocating seats proportionally.

Usage

highestAverages(parties = NULL, votes = NULL, seats = NULL,
  method = c("dh", "sl", "msl", "danish", "hsl", "hh", "imperiali", "wb",
  "jef", "ad", "hb"), threshold = 0, ...)

## S3 method for class 'default': highestAverages(parties = NULL, votes = NULL, seats = NULL, method = c("dh", "sl", "msl", "danish", "hsl", "hh", "imperiali", "wb", "jef", "ad", "hb"), threshold = 0, ...)

Arguments

parties
A character vector for parties labels or candidates in the same order as votes. If NULL, alphabet will be assigned.
votes
A numeric vector for the number of formal votes received by each party or candidate.
seats
The number of seats to be filled (scalar or vector).
method
A character name for the method to be used. See details.
threshold
A numeric value between (0~1). Default is set to 0.
...
Additional arguements (currently ignored)

Value

  • A data.frame of length parties containing apportioned integers (seats) summing to seats.

encoding

latin1

Details

The following methods are available:
  • "dh"
{d'Hondt method} "sl"{Sainte-Lague method} "msl"{Modified Sainte-Lague method} "danish"{Danish modified Sainte-Lague method} "hsl"{Hungarian modified Sainte-Lague method} "imperiali"{The Italian Imperiali (not to be confused with the Imperiali quota which is a Largest remainder method)} "hh"{Huntington-Hill method} "wb"{Webster's method} "jef"{Jefferson's method} "ad"{Adams's method} "hb"{Hagenbach-Bischoff method}

References

Gallagher, Michael (1992). "Comparing Proportional Representation Electoral Systems: Quotas, Thresholds, Paradoxes and Majorities". British Journal of Political Science, 22, 4, 469-496.

Lijphart, Arend (1994). Electoral Systems and Party Systems: A Study of Twenty-Seven Democracies, 1945-1990. Oxford University Press.

See Also

largestRemainders, dHondt, hamilton, politicalDiversity. For more details see the Indices vignette: vignette('Indices', package = 'SciencesPo').

Examples

Run this code
# Results for the state legislative house of Ceara (2014):
votes <- c(187906, 326841, 132531, 981096, 2043217, 15061, 103679,109830, 213988, 67145, 278267)

parties <- c("PCdoB", "PDT", "PEN", "PMDB", "PRB", "PSB", "PSC", "PSTU", "PTdoB", "PTC", "PTN")

highestAverages(parties, votes, seats = 42, method = "dh")

# Let's create a data.frame with typical election results
# with the following parties and votes to return 10 seats:

my_election <- data.frame(
party=c("Yellow", "White", "Red", "Green", "Blue", "Pink"),
votes=c(47000, 16000,	15900,	12000,	6000,	3100))

highestAverages(my_election$party,
my_election$votes,
seats = 10,
method="dh")

# How this compares to the Sainte-Lague Method

(dat= highestAverages(my_election$party,
my_election$votes,
seats = 10,
method="sl"))

# Plot it
bar.plot(data=dat, "Party", "Seats") +
theme_fte()

Run the code above in your browser using DataLab