Tracking Consensus and Bipartisanship in US Congress (1789-today)

building architecture flag usa
Photo by Gagan Kaur on Pexels.com

Reaching across the aisle has been popular with the voting public since I can remember – if not forever. Still, rollcall data show that what actually occurred is the opposite; divisions are deepening and intra-party coherence is increasing. Here’s a tool to check all your questions on reaching across the aisle, meaning inter-party consensus, bipartisanship and intra-party cohesion. It is updated daily with new data from the Congress-API. Scroll down! \Downarrow

\Downarrow You might have to wait a little bit, as the tool loads a lot of data…\Downarrow

The graphs show mean values across the selected time periods between 0 and 1, where 0 denotes less consensus and bipartisanship and 1 means perfect consensus or bipartisanship (This does not apply for the cohesion measures Rice-Democrats and Rice-Republicans, for which party-internal consensus is shown). Here’s what users can choose, view and download, explained in detail:

Indicators:

  • Data Intervals: Here you can select, what sort of timeframe you want to show on the x-axis.
  • Chamber: This toggle lets you select whether rollcall votes from the House and/or the Senate are displayed.
  • Votes: This lets you select whether the measures shown should be based on “Yes-“, “No-” or “Present and Abstain”-votes. “Yea” and “Aye” were combined as “Yes”, “Nay” and “No” as “No”, and votes of either “Present” or “Abstention”-values were combined into a third category of votes.
  • Consensus Indices: This toggle lets you decide between five different measures of consensus and/or cohesion. All examples are made with “Yes”-votes, but most exist in the forms of the “No”- and the “Present and Abstain”-category as well:
    • Multiparty Rice-Coefficient of Difference: This measure is a generalized version of the Rice coefficient of difference. For example, voteshares of “Yes” of parties A, B, and C are compared. This measure is particularly suited for time periods, in which more than two parties were in power. If the parties differ strongly, it’s a value close to 0. Here’s the formula: MRCD^{(i)} = 1 - \left( \frac{1}{\binom{n}{2}} \sum_{k < l}^{} \left| \frac{{Yes_k}^{(i)}}{\sum_{j=1}^{n} m_j} - \frac{{Yes_l}^{(i)}}{\sum_{j=1}^{n} m_j} \right| \right). i= is the rollcall, j= the party, k= one party that is part of a pair of all possible combinations of differences, l= the other party that is part of the pair and n= the number of parties and m= the total number of members (of a party j).
    • Opposition-weighted Cohesion: This measure sums the weighted absolute differences in voteshares (“Yes”, “No” or “Present and Abstain”) between the party in government and all opposition parties and is particularly suited for historic purposes, when more than two parties were in Congress. It tells you whether there were large differences between parties in voting behavior, accounting for the number of representatives in the opposition party/parties. It is basically a weighted Rice-coefficient of difference. The formula: OWC = \frac{\sum_{n=1}^{N} w_n \left( 1 - \left| \frac{Yes_{gov}}{gov} - \frac{Yes_n}{n} \right| \right)}{N}, where 1-N= number of parties in opposition, w= weight or share of party of the opposition (all opposition parties together=1), gov= number of legislators of the party in government and n= number of legislators of party n in opposition.
    • Rice-Democrats: This measure indicates whether Democrats agreed internally on what to vote. RD =|\frac{\sum_{1}^{n} Yes_n}{\sum_{1}^{n}n} - \frac{\sum_{1}^{n} No_n}{\sum_{1}^{n}}|, where n= the number of Democratic members.
    • Rice-Republicans: This measure indicates whether Republicans agreed internally on what to vote. RR =|\frac{\sum_{1}^{n} Yes_n}{\sum_{1}^{n}n} - \frac{\sum_{1}^{n} No_n}{\sum_{1}^{n}}|, where n= the number of Republican members.
    • Rice-Coefficient of Difference: This measure shows the absolute difference between the share of Democrats who voted “Yes” and the share of Republicans who voted “Yes”, subtracted from 1 so higher numbers indicate greater consensus. It measures bipartisanship, but is not well suited to congresses, in which multiple parties were present (and voting). As a formula: 1-|\frac{\sum_{1}^{d} Yes_d}{\sum_{1}^{d}d} - \frac{\sum_{1}^{r} Yes_r}{\sum_{1}^{r}r}|, where d= the number of Democratic members and r= the number of Republican members.
  • Policy Field: The categorizations do unfortunately not follow modern categories of policy-fields. Instead, the categorization is based on Peltzman’s (1984) coding of issue-areas. These data are available from 1789 to 2014/15 and secondary aspects of a different policy were dropped. These are the categories:
    • Regulation General Interest: Constraints on expenditures, on powers of regulatory agencies, on executives or on private sector resource allocation that affect many to most individuals in many to most or all states.
    • Internal Organization: Nominations, Speaker Votes, Rules of Procedure etc.
    • Government Organization: Regulation on the activity of Congress or of the Federal Bureaucracy.
    • Regulation Special Interest: Constraints on expenditures, on powers of regulatory agencies, on executives and on private sector resource allocation that affect some to few individuals in some to few states.
    • Indian Affairs: Issues affecting Native Americans.
    • Budget Special Interest: Expenditure and/or taxes.
    • Domestic Social Policy: Regulatory bills on moral or ethical issues, such as abortion, school prayer and busing.
    • Budget General Interest: Expenditure and/or taxes.
    • Foreign Policy Budget: Foreign policy spending, excluding defense.
    • Defense Policy Budget: Defense spending, excluding other foreign policy spending.
    • Foreign Policy Resolutions: Foreign policy directives, treaties, etc. (excluding defense).
    • Defense Policy Resolutions: Defense policy directives, treaties, etc. (excluding other foreign policy).
    • D.C.: Issues affecting the District of Columbia.
  • Rollcall Counts: This is a relative measure from 0-1 that shows on the second y-axis, how many of the maximum number of rollcalls of the selected time periods and across the selected interval were voted on. (The package ggplot2 unfortunately does not allow for a second y-axis that is not scalable with the first, which is why I cannot show the absolute number of rollcalls.)

Time Range:

  • Start Date: Users can indicate the beginning of the period, in which to observe consensus indices. If the chosen start date does not match a date, in which a rollcall-vote took place, the closest date, in which there was a rollcall-vote is chosen.
  • End Date: Users can indicate the end of the period, in which to observe consensus indices. If the chosen end date does not match a date, in which a rollcall-vote took place, the closest date, in which there was a rollcall-vote is chosen (2024 is obviously not complete yet…).

Styling:

  • Font: Users can choose between Computer Modern Serif Roman (the standard font in LaTeX-documents) and the Showtext package’s standards “Sans”, “Serif”, “Mono” and “Wqy-Microhei”.
  • Color Scheme: Users can choose between the Viridis scale, shades of gray or black and white. The shades of gray and the b/w-mode come with different linetypes.

Notes on Data Transformation:

There are a few simplifications and adjustments that had to be made in order to measure consensus between parties correctly: All independents that do not caucus with either democrats or republicans (coded in voteview as 328-cases), were dropped. This resulted in a drop of about 700 votes (from 25 Million+ votes as of 2024-11-03). Independent democrats (code 329), independent republicans (code 331) and independent whigs (code 603) are counted as belonging to their respective parties (codes 100, 200, and 29). For more info on party codes, see here.

How to Cite (APA 6th):

Schmid, J. (2024). Tracking Consensus and Bipartisanship in US Congress (1789-today). Bern. Retrieved from https://jjschmid.com/tracking-consensus-and-bipartisanship-in-us-congress-1789-today/.

References (APA 6th):

Casstevens, T., & Porterfield, O. (1968). The Index as a Mathematical Function of the Indices of Cohesion for Roll Call Voting. Behavioral Science, 13(3). Retrieved from https://www.proquest.com/docview/1301269875/citation/9FCA7CDBFB394758PQ/1.

Chang, W., Cheng, J., Allaire, J., Sievert, C., Schloerke, B., Xie, Y., … Borges, B. (2024). shiny: Web Application Framework for R. Retrieved from https://CRAN.R-project.org/package=shiny

Hug, S. (2010). Selection Effects in Roll Call Votes. British Journal of Political Science, 40(1), 225–235.
Lewis, J. B., Poole, K., Rosenthal, H., Boche, A., Rudkin, A., & Sonnet, L. (2021). Voteview: Congressional Roll-Call Votes Database. Retrieved from https://voteview.com.

Library of Congress. (2024). Congress API. Retrieved from https://api.congress.gov.

Peltzman, S. (1984). Constituent Interest and Congressional Voting. The Journal of Law and Economics, 27(1), 181–210. https://doi.org/10.1086/467062.

Qiu, Y. (2024). showtext: Using Fonts More Easily in R Graphs. Retrieved from https://CRAN.R-project.org/package=showtext.

Rice, S. A. (1925). The Behavior of Legislative Groups: A Method of Measurement. Political Science Quarterly, 40(1), 60–72. https://doi.org/10.2307/2142407.

Sonnet, L., & Lewis, J. B. (2019). RVoteview. Retrieved from https://github.com/voteview/Rvoteview.

Wickham, H. (2023). httr: Tools for Working with URLs and HTTP. Retrieved from https://CRAN.R-project.org/package=httr.

Wickham, H., Averick, M., Bryan, J., Chang, W., McGowan, L., François, R., … Yutani, H. (2019). Welcome to the Tidyverse. Journal of Open Source Software, 4(43), 1–6. https://doi.org/10.21105/joss.01686.

Wickham, H. (2016). Ggplot2: Elegant graphics for data analysis (2nd ed.). Cham: Springer.

Questions, Comments, Suggestions? Contact me!