README.md

legislatoR: Interface to the Comparative Legislators Database

License: GPL v3 CRAN_Status_Badge GitHub release version CRAN_Download_Badge

legislatoR is a package for the software environment R that facilitates access to the Comparative Legislators Database (CLD). The CLD includes political, sociodemographic, career, online presence, public attention, and visual information for over 67,000 contemporary and historical politicians from 16 countries. Data are also available for download in .csv and .sqlite formats at the CLD's Dataverse.

Content and data structure

The CLD covers the following countries and time periods:

| Country | Legislative sessions | Politicians (unique*) | Integrated with | | ------------------------------------ | --------------------------- | -------------------- | ------------------ | | Austria (Nationalrat) | all 27 (1920-2019) | 1,923 | ParlSpeech V2 (Rauh/Schwalbach 2020) | | Brazil (Câmara dos Deputados) | 38-57 (1947-2022) | 3,474 | | | Canada (House of Commons) | all 44 (1867-2021) | 4,567 | | | Czech Republic (Poslanecka Snemovna) | all 9 (1992-2021) | 1,124 | ParlSpeech V1 (Rauh et al. 2017) | | France (Assemblée) | all 16 (1958-2022) | 4,263 | | | Germany (Bundestag) | all 20 (1949-2021) | 4,371 | BTVote data (Bergmann et al. 2018), ParlSpeech V1 (Rauh et al. 2017), Reelection Prospects data (Stoffel/Sieberer 2017) | | Ireland (Dail) | all 33 (1918-2020) | 1,408 | Database of Parliamentary Speeches in Ireland (Herzog/Mikhaylov 2017) | | Israel (Knesset) | all 25 (1949-2022) | 1,022 | | | Italy (Camera dei deputati and Senato della Repubblica) | all 19 (1948-2022) | 5,149 | | | Japan (Shūgiin) | all 49 (1890-2021) | 6,581 | | | Netherlands (Tweede Kamer) | all 65 (1815-2021) | 1,887 | | | Scotland (Parliament) | all 6 (1999-2021) | 348 | ParlScot (Braby/Fraser 2021) | | Spain (Congreso de los Diputados) | all 14 (1979-2019) | 2,616 | ParlSpeech V2 (Rauh/Schwalbach 2020) | | Turkey (Büyük Millet Meclisi) | all 27 (1920-2018) | 5,298 | | | United Kingdom (House of Commons) | all 58 (1801-2019) | 11,321 | EggersSpirling data (starting from 38th session, Eggers/Spirling 2014), ParlSpeech V1 (Rauh et al. 2017) | | United States (House and Senate) | all 117 (1789-2021) | 12,593 | Voteview data (Lewis et al. 2019), Congressional Bills Project data (Adler/Wilkserson 2018) | | 16 | 529 | 67,945 | 12 |

* We only count legislators with a unique Wikipedia page or Wikidata ID. Sometimes legislators do not have either. Such cases are indicated by the string "miss" in the wikidataid or pageid.

For each legislature, the CLD holds nine tables:

  1. Core (sociodemographic data)
  2. Political (political data)
  3. History (full revision records of individual Wikipedia biographies)
  4. Traffic (daily user traffic on individual Wikipedia biographies starting from July 2007)
  5. Social (social media handles and personal website URLs)
  6. Portraits (URLs to portraits)
  7. Offices (public offices)
  8. Professions (professions)
  9. IDs (identifiers linking politicians to other files, databases, or websites)

The tables contain the following variables (see respective R help files for further details):

Note that for some legislatures or legislative periods, tables may only hold information for a subset of politicians or variables.

The CLD comes as a relational database. This means that all tables can be joined with the Core table via one of two keys - the Wikipedia page ID or the Wikidata ID. These keys uniquely identify individual politicians. The figure below illustrates this structure and the CLD's content.

Installation

legislatoR is available through CRAN and GitHub. To install the package from CRAN, type:

install.packages("legislatoR")

To install the package from Github, type:

devtools::install_github("saschagobel/legislatoR")

Usage

A working Internet connection is required to access the CLD in R. This is because the data are stored online and not installed together with the package. The package provides table-specific function calls. These functions are named after the respective table (see above) and preceded by get_. To fetch the Core table, use the get_core() function, for the Political table, use the get_political() function. Call the package help file via ?legislatoR() to get an overview of all function calls. Tables are legislature-specific, so a three-letter country code must be passed as an argument to the function. Here is a breakdown of all country codes. You can also call the cld_content() function to get an overview of the CLD's scope and valid country codes.

| Country | Code | Country | Code | Country | Code | | ------------------------- |:-----------:| ---------------- |:----------:| ---------------------- |:------------------------:| | Austria | aut | Ireland | irl | Spain | esp | | Brazil | bra | Israel | isr | Turkey | tur | | Canada | can | Italy | ita_house/ita_senate | United Kingdom | gbr | | Czech Republic | cze | Japan | jpn | United States | usa_house/usa_senate | | | France | fra | Netherlands | nld | | | | Germany | deu | Scotland | sco | | |

Tables can be joined and subsetted while being fetched and memory is only allocated by the parts of a table assigned into the environment. Basic fetching, joining, and subsetting of data are illustrated below. See the Vignette Introducing legislatoR for a detailed tutorial.

# load and attach legislatoR and dplyr
library(legislatoR)
library(dplyr)

# assign entire Core table for the German Bundestag into the environment
deu_politicians <- get_core(legislature = "deu")

# assign data for the 8th legislative session into the environment
deu_politicians_subset <- semi_join(x = get_core(legislature = "deu"),
                                            y = filter(get_political(legislature = "deu"), session == 8), 
                                          by = "pageid")

# join deu_politicians_subset with respective traffic on Wikipedia biographies
deu_traffic <- left_join(x = deu_politicians_subset, 
                           y = get_traffic(legislature = "deu"), 
                             by = "pageid")

# assign birthdate for members of the political party 'SPD' into the environment
deu_birthdates_SPD <- semi_join(x = select(get_core(legislature = "deu"), pageid, birth),
                                y = filter(get_political(legislature = "deu"), party == "SPD"),
                                by = "pageid")$birth

News

See here for details on updates.

Glossary

See here for the full form of abbreviated country codes and party names and English translations of non-English party names.

Sources

The CLD was predominantly built using automated data extraction techniques. See the source code and this list of Web sources for more details.

Citation

Thank you for using the CLD and legislatoR! Please consider citing:

Göbel, Sascha and Simon Munzert. 2022. "The Comparative Legislators Database". British Journal of Political Science, 52(3), 1398-1408.

Support

The work on this package was in part funded by the Daimler and Benz Foundation (Funding period 2017/18; project "Citizen and Elite Activity on the Wikipedia Market Place of Political Information").

Many thanks to Anna Wunderling for designing legislatoR's logo.

Author information

Sascha Göbel (corresponding author and repository maintainer) Goethe University Frankfurt Faculty of Social Sciences Theodor-W.-Adorno-Platz 6 60323 Frankfurt am Main, Germany Email: sascha.goebel@soz.uni-frankfurt.de

Simon Munzert Hertie School



saschagobel/legislatoR documentation built on Jan. 30, 2024, 7:52 p.m.