LegislatoR
Interface to the Comparative Legislators Database
Install / Use
/learn @saschagobel/LegislatoRREADME
legislatoR: Interface to the Comparative <img src="images/sticker.jpg" width="160" align="right" /> <br /> Legislators Database
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<br /> (1920-2019) | 1,923 | ParlSpeech V2 (Rauh/Schwalbach 2020) |
| Brazil (Câmara dos Deputados) | 38-57<br /> (1947-2022) | 3,474 | |
| Canada (House of Commons) | all 44<br /> (1867-2021) | 4,567 | |
| Czech Republic (Poslanecka Snemovna) | all 9<br /> (1992-2021) | 1,124 | ParlSpeech V1 (Rauh et al. 2017) |
| France (Assemblée) | all 16<br /> (1958-2022) | 4,263 | |
| Germany (Bundestag) | all 20<br /> (1949-2021) | 4,371 | BTVote data (Bergmann et al. 2018),<br /> ParlSpeech V1 (Rauh et al. 2017),<br /> Reelection Prospects data (Stoffel/Sieberer 2017) |
| Ireland (Dail) | all 33<br /> (1918-2020) | 1,408 | Database of Parliamentary Speeches in Ireland (Herzog/Mikhaylov 2017) |
| Israel (Knesset) | all 25<br /> (1949-2022) | 1,022 | |
| Italy (Camera dei deputati and Senato della Repubblica) | all 19<br /> (1948-2022) | 5,149 | |
| Japan (Shūgiin) | all 49<br /> (1890-2021) | 6,581 | |
| Netherlands (Tweede Kamer) | all 65<br /> (1815-2021) | 1,887 | |
| Scotland (Parliament) | all 6<br /> (1999-2021) | 348 | ParlScot (Braby/Fraser 2021) |
| Spain (Congreso de los Diputados) | all 14<br /> (1979-2019) | 2,616 | ParlSpeech V2 (Rauh/Schwalbach 2020) |
| Turkey (Büyük Millet Meclisi) | all 27<br /> (1920-2018) | 5,298 | |
| United Kingdom (House of Commons) | all 58<br /> (1801-2019) | 11,321 | EggersSpirling data (starting from <br /> 38th session, Eggers/Spirling 2014),<br /> ParlSpeech V1 (Rauh et al. 2017) |
| United States (House and Senate) | all 117<br /> (1789-2021) | 12,593 | Voteview data (Lewis et al. 2019), <br /> 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:
- Core (sociodemographic data)
- Political (political data)
- History (full revision records of individual Wikipedia biographies)
- Traffic (daily user traffic on individual Wikipedia biographies starting from July 2007)
- Social (social media handles and personal website URLs)
- Portraits (URLs to portraits)
- Offices (public offices)
- Professions (professions)
- IDs (identifiers linking politicians to other files, databases, or websites)
The tables contain the following variables (see respective R help files for further details):
- Core: Country, Wikipedia page ID, Wikidata ID, Wikipedia Title, full name, sex, ethnicity, religion, date of birth and death, place of birth and death.
- Political: Wikipedia page ID, legislative session, party affiliation, lower constituency, upper constituency, constituency ID, start and end date of legislative session, period of service, majority status, leader positions.
- History: Wikipedia page ID, Wikipedia revision and previous revision ID, editor name/IP and ID, revision date and time, revision size, revision comment.
- Traffic: Wikipedia page ID, date, user traffic.
- Social: Wikidata ID, Twitter handle, Facebook handle, Youtube ID, Google Plus ID, Instagram handle, LinkedIn ID, personal website URL.
- Portraits: Wikipedia page ID, Wikipedia portrait URL.
- Offices: Wikidata ID, a range of offices such as attorney general, chief justice, mayor, party chair, secretary of state, etc.
- Professions: Wikidata ID, a range of professions such as accountant, farmer, historian, judge, mechanic, police officer, salesperson, teacher, etc.
- IDs: Wikidata ID, IDs for integration with various political science datsets as well as a range of other IDs such as parliamentary website IDs, Library of Congress or German National Library IDs, Notable Names Database or Project Vote Smart IDs, etc.
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.
<p align="center"> <img width="500" src="images/data-structure.png"> </p>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 t
Related Skills
feishu-drive
352.0k|
things-mac
352.0kManage Things 3 via the `things` CLI on macOS (add/update projects+todos via URL scheme; read/search/list from the local Things database)
clawhub
352.0kUse the ClawHub CLI to search, install, update, and publish agent skills from clawhub.com
postkit
PostgreSQL-native identity, configuration, metering, and job queues. SQL functions that work with any language or driver
