Electoral Disproportionality: Rae (1971), Loosemore and Hanby (1971), Lijphart (1986), Lijphart (1994), Gallagher (1991) and Cox and Shugart (1991).

dispro(tidy_data, method, scale = 1)

Arguments

tidy_data

data.frame that contains the following variables with these names:

  • election: year of election.

  • unit: the unit of analysis (province, department ...)

  • party: name of the political parties that obtain votes.

  • votes: votes obtained by each party.

  • seats: .

If the data is not structured in this way you can order it with: convert_esaps.

method

Method to calculate electoral volatility:

  • method = "Rae" or method = 1.

  • method = "Loosemore and Hanby" or method = 2.

  • method = "Lijphart_1" or method = 3.

  • method = "Lijphart_2" or method = 4.

  • method = "Gallagher" or method = 5.

  • method = "Cox and Shugart" or method = 6.

scale

By default it is 100, the indices will vary between 0 and 100. If scale = 1 the variation will be between 0 and 1.

Value

data.frame.

Author

Nicolas Schmidt nschmidt@cienciassociales.edu.uy

Examples

votes <- data.frame(election = rep(c(2000, 2005), each = 4), unit = rep(c("ARG", "URY"), each = 4), party = c("party_A", "party_B","party_C","party_D"), votes = c(20, 30, 40, 10, 30, 35, 25, 10), seats = c(25, 20, 40, 15, 35, 30, 30, 5) ) dispro(votes, 1:6, 1)
#> election unit Rae LH Lijphart_1 Lijphart_2 Gallagher Cox_Shugart #> 1 2000 ARG 0.05 0.1 0.10 0.06 0.32 1.00 #> 2 2005 URY 0.05 0.1 0.05 0.06 0.32 0.73
dispro(votes, 3)
#> election unit Lijphart_1 #> 1 2000 ARG 0.10 #> 2 2005 URY 0.05
dispro(tidy_data = votes, method = 3:5)
#> election unit Lijphart_1 Lijphart_2 Gallagher #> 1 2000 ARG 0.10 0.06 0.32 #> 2 2005 URY 0.05 0.06 0.32
dispro(tidy_data = votes, method = c(1,3,6))
#> election unit Rae Lijphart_1 Cox_Shugart #> 1 2000 ARG 0.05 0.10 1.00 #> 2 2005 URY 0.05 0.05 0.73
dispro(tidy_data = votes, method = c("Rae", "Gallagher"))
#> election unit Rae Gallagher #> 1 2000 ARG 0.05 0.32 #> 2 2005 URY 0.05 0.32