vfs: Votes from Seats Laws

View source: R/vfs.R

vfsR Documentation

Votes from Seats Laws

Description

Implementations of the four laws from the book Votes from Seats.

Usage

vfs(S, M, t = NULL, ret_SM = T)

Ns(S, M, t = NULL)

s1(S, M, t = NULL)

Nv(S, M, t = NULL)

v1(S, M, t = NULL)

Arguments

S

Vector of assembly sizes. If t is provided, the vector of basic tier assembly sizes.

M

Vector of average district sizes. If t is provided, the vector of basic tier average district sizes.

t

Optional, vector of upper tier seat shares.

ret_SM

A TRUE or FALSE value denoting whether or not to return the values of S and M, and if supplied, t

Details

These functions implement the four fundamental laws from the book Votes from Seats in R.

These laws are:

Number of effective parties in terms of seats:

N_s = (MS)^\frac{1}{6}

Seat share of the largest party:

s_1 = (MS)^\frac{-1}{8}

Number of effective parties in terms of votes:

N_v = ((MS)^\frac{1}{4}+1)^\frac{2}{3}

Vote share of the largest party:

v_1 = ((MS)^\frac{1}{4}+1)^\frac{-1}{2}

If t is supplied, then these are instead calculated as:

Number of effective parties in terms of seats:

N_s = 2.5^t (MS)^\frac{1}{6}

Seat share of the largest party:

s_1 = 0.5^t (MS)^\frac{1}{8}

Number of effective parties in terms of votes:

N_v = (4^t (MS)^\frac{1}{4} + 1)^\frac{2}{3}

Vote share of the largest party:

v_1 = (4^t (MS)^\frac{1}{4} + 1)^\frac{-1}{2}

Value

Ns, s1, Nv, v1 all return a vector of numeric values. vfs returns a dataframe containing six columns, S, M, and a column for each of the measures.

References

\insertRef

shugart2017psmisc


philswatton/psmisc documentation built on June 11, 2025, 1:13 p.m.