Final Prediction

This is blog post #8 (the final one!) in a series of analytical posts about the 2022 midterms. This post is affiliated with Gov 1347: Election Analytics, a course at Harvard University in the Government department.


Overview

Welcome to the final election forecasting update of this election cycle! It’s been a long journey of election research and data analysis, but alas, we are one day out from Election Day. In today’s blog post, I am going to present my final predictions in detail, which will involve model formulas, model descriptions, model coefficients, model interpretations, model validation, prediction confidence intervals, and visualizations for my national and district-level models.

Source: The Economist.

Figure 1: Source: The Economist.

National Model

Starting in week 2, I wanted to build out a good national model with a mix of fundamental variables to predict the national two-party vote shares of the parties. I ultimately chose to stick with fundamentals because in weeks 5 and 6, I found that campaign activity, whether it be on air or on the ground, didn’t significantly or directly impact electoral outcomes. In week 7, I reached the same conclusion regarding shocks during the election cycle.

The best iteration of my model is the most recent one, which includes only 4 predictors: absolute GDP growth (Quarter 8, the last of the election cycle), the average generic ballot support of the House incumbent party (weighted by recency of the poll), an indicator for whether or not the House incumbent party is also the president’s party during a midterm year, and the average congressional approval rate. Absolute GDP growth is the economic variable I chose to capture how voters reward and punish the incumbent House party, and it came about after multiple considerations of other economic variables like unemployment rate, GDP growth percentage, and RDI change percentage. Average generic ballot support of the party in control of the House, introduced in week 3, reflects how much the nation wants the currently-leading party to retain that congressional power. The binary indicator for President's-Party-House-Incumbent-Midterm is my attempt to capture the well-known fact that the president’s party consistently performs poorly in midterm elections, which I covered in week 1. The indicator is equal to 1 if the party in control of the House happens to be the president’s party in a midterm year, and to 0 otherwise. Lastly, the average congressional approval rate was included because I believe it gives us a sense of how satisfied voters are with Congress, generally. This is distinct from the generic ballot support metric, with the former telling us how much voters like Congress’s performance, which (perhaps unintuitively) doesn’t match 1-to-1 with how much voters want the incumbent party to stay in power.

Disconnect between Congressional Approval and Incumbent Generic Ballot.

Figure 2: Disconnect between Congressional Approval and Incumbent Generic Ballot.

As shown above, generic ballot support for the incumbent party in the House doesn’t move with general approval of Congress! This was surprising to me at first, but was a good sign that I wasn’t introducing too much collinearity into my model by including both measures.

Model Details

Vote Share Formula

I wanted to use this model to predict both national incumbent two-party vote share and national incumbent seat count, so I came up with two final regression formulas that incorporated the aforementioned fundamental predictors.

National Democratic Two-Party Vote Share Regression Formula.

Vote Share Regression

In modeling the incumbent party’s two-party vote share, which is the Democrat’s vote share this election, we get some interesting coefficients. See below for this model’s coefficient values, variable significance, and the model’s overall evaluation metrics (like R-squared and adjusted R-squared).

National Democratic Two-Party Vote Share Regression Output.

Figure 3: National Democratic Two-Party Vote Share Regression Output.

The small, but negative, coefficient attached to absolute GDP is rather unintuitive, but my hypothesis is that for GDP, voters respond to levels and relative change differently. Previous weeks’ work has shown that positive percentage change is associated with higher incumbent vote share, as we’d expect, but positive absolute change is negatively correlated with incumbent party vote share perhaps because voters slightly punish incumbents when they deem the absolute change is not “large enough.” For every additional billion dollars of GDP change between the 7th and 8th quarters, the incumbent party loses 0.014 percentage points.

The generic ballot support variable has a coefficient of 0.472, which makes sense - if voters generally support the incumbent party in polls, the party can expect to do well on Election Day. For every percentage point higher the generic ballot support is for the incumbent party in polls, the incumbent party earns an additional 0.472 percentage point of vote share.

The only variable with a larger coefficient than generic ballot support is the president’s-party-incumbent-midterm variable. Midterm years in which the incumbent party is the president’s party see the incumbent party losing 2.788 percentage points of vote share. This is consistent with the decades of poor president’s party House performance we’ve observed.

Lastly, with every 1 percentage point increase in congressional approval, the incumbent party gains 0.092 percentage points in vote share. Again, this makes sense, as more voter satisfaction with the current Congress should be correlated with higher electoral support for the House incumbent party to remain in power.

I would like to quickly note my model’s final adjusted R-squared, 0.872, which is a nice improvement from week 2’s 0.292. This value indicates that the model, with its 4 predictors, can explain about 87.2% of the variance in incumbent party vote share.

Vote Share Validation

National Democratic Two-Party Vote Share Model Validation.

(#fig:vote share validation printout)National Democratic Two-Party Vote Share Model Validation.

Above is the histogram of the mean out-of-sample residuals over 1,000 runs of cross-validation for my model. The distribution looks roughly normally distributed, with a mean a little below 0, tiny tails, and most residuals within [-2, 2].

Seat Count Formula

Next, I ran the same model again, but this time with incumbent party seat count as the response variable. Below are the regression formula and regression output for this model. National Democratic Party Seat Count Regression Formula.

Seat Count Regression

National Democratic Seat Count Regression Output.

Figure 4: National Democratic Seat Count Regression Output.

The model coefficients of the seat count model have the same signs as those of the vote share model, but different magnitudes because of the switch from predicting vote share, which can only be in the interval [0, 100], to predicting seat count, which can be [0, 435]. It is really the sign of the coefficients that matter for interpretation, and since those haven’t changed, I will only briefly comment on this regression output.

It’s helpful to see the relationship between the president’s-party-incumbent-midterm effect and seat count because now, it becomes clear that when the president’s party is trying to defend its House incumbency in midterm years, like this year, it faces a steep uphill battle - when the indicator variable is 1, and everything else is held constant, the incumbent party is predicted to lose around 29 seats.

Seat Count Validation

National Democratic Party Seat Count Model Validation.

(#fig:seat count validation printout)National Democratic Party Seat Count Model Validation.

Above is the histogram of the mean out-of-sample residuals over 1,000 runs of cross-validation for my model again, this time for prediction of incumbent seat count. The distribution looks roughly normally distributed, with a mean at around 0 and most residuals within [-20, 20]. Neither our vote share nor our seat count model seem to perform poorly when tested with out-of-sample data, so we may move forward with prediction now!

National Predictions

Using the two models above, and the newest data for the 2022 midterms, I predict that the House incumbent (Democratic Party) two-party vote share will be 48.56% (47.36, 49.83) and the seat count will be 209 (198, 221).

The GDP data comes from FRED, the generic ballot data comes from FiveThirtyEight, and the congressional approval numbers come from Gallup.
435 Seats Up For Grabs.

Figure 5: 435 Seats Up For Grabs.

District Models

Since week 4, I have been slowly working towards building 435 models for the 435 district races. After much consideration, I decided to build two types of models: (1) the competitive type, which involves the average of many expert predictions and incumbency, and (2) the non-competitive type, which involves past election results and incumbency.

Most expert ratings were pulled from Wikipedia’s election ratings pages for each election (see this year’s page here), and districts are determined to be competitive if one of the major rating groups considered them not “safe” or “solid”.

Model Details

The main difference in variable selection between the competitive and non-competitive models boils down to the fact that naturally, there is a lot more coverage of the competitive ones, meaning more expert rating availability. Because of this, the competitive district models feature an average of about 7 expert ratings, whereas the non-competitive ones feature none.

For the competitive districts, I used the following regression formula: Competitive District Model Formula. These models ended up with an average R-squared of 0.88 and average adjusted R-squared of 0.49.

Developing models for the non-competitive models was a journey - over the weeks, I realized that good district-level data is hard to come by, and with Election Day drawing near, I felt there was a choice between building out a self-made model and building a highly predictive one to be made. In the end, I decided to go with the former, in the name of learning. The models then are fundamentals-based than the competitive ones, using the major vote share of the last Democrat candidate in addition to the incumbency of the current candidate.

Non-competitive District Model Formula.

I chose to use these variables because House elections have historically favored incumbent candidates, and I believe that how the Democrat performed in each district in previous years can tell us a lot about how the Democratic candidate will perform this year.

Coefficients for Incumbent Variable. The histogram above illustrates the coefficient values for the incumbent variable over the many non-competitive districts. The average coefficient value is a little under 16, and it indicates that on average, when a Democratic candidate is an incumbent, their vote share is expected to be about 16 points higher than had they not been an incumbent. This definitely tracks with what we know about the incumbency advantage for House members.

Coefficients for Last Democrat Vote Share Variable. This histogram shows the coefficient values for the last Democrat’s vote share (in the previous election), and the mean is value is 0.36. The numerical interpretation of this one is a little confusing, but the main takeaway is that the vast majority of these coefficients are positive, indicating that the higher the last Democrat’s vote share, the higher we can expect this year’s Democratic vote share to be.

These models have an average R-squared of 0.50 and average adjusted R-squared of 0.45.

District Predictions

Below are my predictions for the 94 most competitive districts, using expert ratings and incumbency:

statedistrictfittedlowerupperwinner
Alaska48.0339.8756.19Republican
Arizona150.6948.5352.85Democrat
Arizona248.6346.8650.41Republican
Arizona648.19Republican
California363.11Democrat
California956.05Democrat
California2150.4240.3460.50Democrat
California2260.08Democrat
California2558.3156.5660.06Democrat
California2654.77Democrat
California4551.94Democrat
California4758.68Democrat
California4950.06Democrat
Colorado349.1244.1654.08Republican
Colorado755.14Democrat
Connecticut449.58Republican
Connecticut554.31Democrat
Florida253.0137.2068.81Democrat
Florida760.77Democrat
Florida1348.4340.7256.13Republican
Florida1548.92Republican
Florida1642.3614.8569.86Republican
Florida2247.55Republican
Florida2744.33Republican
Georgia652.09Democrat
Georgia1253.79Democrat
Illinois653.55Democrat
Illinois830.01Republican
Illinois1147.95Republican
Illinois1349.9844.1255.85Republican
Illinois1447.81Republican
Illinois1748.0142.0653.96Republican
Iowa145.3742.6248.13Republican
Iowa250.2146.1654.25Democrat
Iowa344.5540.2848.83Republican
Kansas343.9541.4846.41Republican
Maine252.2339.1765.29Democrat
Maryland6-34.28Republican
Michigan347.5646.2748.86Republican
Michigan745.5637.7453.37Republican
Michigan846.2539.6052.90Republican
Michigan1146.0645.2746.85Republican
Minnesota151.5348.7554.31Democrat
Minnesota248.0442.6953.39Republican
Minnesota340.77Republican
Minnesota848.8345.4052.25Republican
Missouri246.53Republican
Nebraska248.8640.0757.65Republican
Nevada350.5246.0754.97Democrat
Nevada447.8741.3154.42Republican
New Hampshire148.4346.1850.68Republican
New Hampshire253.4149.4257.40Democrat
New Jersey246.43Republican
New Jersey349.8147.9651.67Republican
New Jersey549.0943.5854.59Republican
New Jersey746.93Republican
New Jersey1160.44Democrat
New Mexico148.06Republican
New Mexico246.11Republican
New York149.2644.7153.82Republican
New York246.52Republican
New York346.90Republican
New York453.62Democrat
New York1146.7836.2257.33Republican
New York1849.8548.1751.53Republican
New York1947.3442.7551.93Republican
New York2247.5045.5949.41Republican
New York2549.1122.9275.29Republican
North Carolina653.43Democrat
North Carolina750.5643.8757.24Democrat
North Carolina949.77Republican
North Carolina1348.93Republican
Ohio146.0344.2247.85Republican
Ohio762.47Democrat
Ohio1020.01Republican
Ohio1358.82Democrat
Ohio1547.43Republican
Oregon552.6651.1854.14Democrat
Pennsylvania150.84Democrat
Pennsylvania651.1050.1852.03Democrat
Pennsylvania743.8936.3351.44Republican
Pennsylvania849.8845.9253.83Republican
Pennsylvania1043.75Republican
Pennsylvania1248.24Republican
Pennsylvania1741.7233.9749.46Republican
South Carolina149.78Republican
Texas2348.1945.3551.03Republican
Virginia248.8548.4149.30Republican
Virginia549.6245.1354.11Republican
Virginia750.98Democrat
Virginia1037.5232.6042.44Republican
Washington350.4346.3954.47Democrat
Washington847.24Republican
Wisconsin344.7334.3955.07Republican
And the non-competitive district predictions, using past election results and incumbency:
Note: Visualization of District-Level Predictions; Several Districts Mapped Imperfectly.

(#fig:district model viz)Note: Visualization of District-Level Predictions; Several Districts Mapped Imperfectly.

Both my national and district-level work has indicated that the Republicans are likely to win the House back once the votes have all been counted. We will see soon if these predictions are correct, and precisely how correct or incorrect they were. Below you can find the rest of the district predictions, complete with 95% confidence intervals.

It’s been a great 8 weeks, see you on the other side of the 2022 midterms!

statedistrictfittedlowerupperwinner
Alabama235.820991142666830.349246748164241.2927355371693Republican
Alabama334.309354066360426.694190241846541.9245178908743Republican
Alabama422.301137969161412.504484622274932.0977913160478Republican
Alabama510.4128988441607-8.0527042765256928.8785019648471Republican
Alabama793.292863213629786.3765995763489100.20912685091Democrat
Alaska049.307419191163641.02567873983557.5891596424921Republican
Arizona143.232207725338836.864810813724749.5996046369529Republican
Arizona250.248770547498644.27030777162456.2272333233732Democrat
Arizona336.131498366801423.711201028069948.5517957055328Republican
Arizona430.802766346172525.279075187511936.326457504833Republican
Arizona536.884336198272932.606901788148141.1617706083977Republican
Arizona641.800088432488529.949813654687953.6503632102891Republican
Arizona799.251096139786348.7594496716176149.742742607955Democrat
Arkansas118.4445655984287-5.0866414733635641.9757726702211Republican
Arkansas248.687784989336237.946050077525359.429519901147Republican
Arkansas328.078977215432219.807655740291836.3502986905727Republican
Arkansas449.730789444916331.196769161026268.2648097288063Republican
California144.040730582566138.581604802130549.4998563630016Republican
California273.453507486196668.093353624818878.8136613475744Democrat
California350.035344335991243.655309412623856.4153792593586Democrat
California438.606495927509632.401924780151844.8110670748675Republican
California578.312599484278969.592465258179587.0327337103783Democrat
California655.866303103071847.263701639391264.4689045667525Democrat
California756.325658188771450.363282224240762.2880341533022Democrat
California834.489977251948622.478306861821346.5016476420759Republican
California959.14794964412351.786668002463566.5092312857826Democrat
California1042.299245504555136.258723818786648.3397671903235Republican
California1152.23988970797943.072767600568961.4070118153892Democrat
California1250.184751842137933.624902446931366.7446012373445Democrat
California1364.352409951681348.585708132237380.1191117711253Democrat
California1463.294693938404552.985932542005873.6034553348032Democrat
California1560.788398732640660.788398732640650.7245052794437Democrat
California1650.785541395074850.785541395074845.0266083184428Democrat
California1771.521266767736266.496932978745876.5456005567265Democrat
California1847.01683225389826.430902121632167.602762386164Republican
California1946.825235083067234.311459930949159.3390102351854Republican
California2050.282986981886238.45684789503662.1091260687364Democrat
California2147.128624426881239.807421602658354.449827251104Republican
California2238.97971442809232.578472773238245.3809560829458Republican
California2333.942606825148128.316485984879439.5687276654169Republican
California2463.606895193067857.840357967342369.3734324187933Democrat
California2536.8482694889529.984815734142443.7117232437576Republican
California2668.012022634737162.158683017023673.8653622524506Democrat
California2751.807377949551542.867258247845660.7474976512574Democrat
California2851.219496843346740.866563277221961.5724304094715Democrat
California2990.616204259170788.92262664121181.606356734081Democrat
California3057.489741922007957.489741922007947.7182389635892Democrat
California3154.560622469846838.085610651621571.0356342880722Democrat
California3227.53713794010958.4993478000167346.5749280802024Republican
California3354.583098045708446.303341593891462.8628544975254Democrat
California3497.80334830184891.741615894286189.7562908092092Democrat
California3573.032316694368364.282539607732681.782093781004Democrat
California3650.911690835058144.397143678417957.4262379916984Democrat
California3774.38992213363674.38992213363659.7209155145873Democrat
California3885.221453448822971.058491457523899.384415440122Democrat
California3942.051212430580335.231180711141748.8712441500188Republican
California4027.992301787474315.380036140535840.6045674344129Republican
California4143.46895139872632.507794657452454.4301081399997Republican
California4232.923560255107226.343790104567539.5033304056469Republican
California4372.741188663834263.023956054491182.4584212731773Democrat
California4498.638705166457485.4554058566115111.822004476303Democrat
California4541.465903767924628.971215007239553.9605925286097Republican
California4665.823461170997950.456017334786781.190905007209Democrat
California4743.880341341389830.371561730516257.3891209522633Republican
California4840.277979503107826.005048244702154.5509107615135Republican
California4952.874506201254820.59416343401685.1548489684936Democrat
California5039.532576249099231.640379876404147.4247726217943Republican
California5156.489508854874440.814461448270472.1645562614784Democrat
California5234.135435233635410.28179921905257.9890712482188Republican
Colorado171.928552917694368.016814624218175.8402912111705Democrat
Colorado262.702883119710559.697669581778865.7080966576421Democrat
Colorado343.957008862337440.467881010094547.4461367145802Republican
Colorado437.288710985033333.19348831723841.3839336528287Republican
Colorado529.026108700472121.740545546662436.3116718542818Republican
Colorado659.443074558893834.686287450154684.199861667633Democrat
Colorado744.128999273898424.71052165927163.5474768885259Republican
Connecticut165.579473028581863.139905696059468.0190403611041Democrat
Connecticut260.487970855926157.28157419713563.6943675147171Democrat
Connecticut362.355322368190359.386172617622165.3244721187586Democrat
Connecticut459.546614495443453.532780858391265.5604481324955Democrat
Connecticut553.913109179701250.035162421620757.7910559377816Democrat
Delaware058.829280278275154.731240151672162.9273204048781Democrat
Florida131.77354951220924.613740089106838.9333589353112Republican
Florida214.4300158417241-7.917551004837836.7775826882861Republican
Florida344.190882961260121.560815085675966.8209508368442Republican
Florida432.195033518411721.592366061428442.7977009753949Republican
Florida732.116206716251219.502935414061144.7294780184413Republican
Florida835.032676063827626.338993178860743.7263589487946Republican
Florida966.372199627577147.042332564603585.7020666905507Democrat
Florida1031.639703431149620.390780754246942.8886261080523Republican
Florida1136.655555683459424.490106799166348.8210045677525Republican
Florida1230.442284547880822.010876925692538.8736921700691Republican
Florida1326.896721208608513.202303328808740.5911390884083Republican
Florida1471.411893878189961.39392292513681.4298648312438Democrat
Florida1535.704409624008228.469709553007142.9391096950093Republican
Florida1633.678327581046219.046106152307448.310549009785Republican
Florida1736.800428235506819.432734315113554.1681221559Republican
Florida1938.782567904664626.834997520033750.7301382892955Republican
Florida2085.425025666419575.138876438615595.7111748942235Democrat
Florida2124.84023659413862.6030268557262647.0774463325509Republican
Florida2241.561380564172922.901032005585560.2217291227602Republican
Florida2370.558381881585855.081478795096986.0352849680747Democrat
Florida2473.254958060078734.7967054389878111.71321068117Democrat
Florida2525.042381678861-7.2446627133246357.3294260710466Republican
Florida2645.71623756376916.936844799228184.49563032831Republican
Florida2726.9202194115153-392.754473490067446.594912313098Republican
Georgia137.749935280508129.27235080682146.2275197541951Republican
Georgia263.800059445607756.321229904557871.2788889866576Democrat
Georgia333.311694031303824.851314085596541.7720739770112Republican
Georgia479.436473610383273.647107377520185.2258398432463Democrat
Georgia585.985256709258380.7494435264691.2210698920565Democrat
Georgia651.885131914345542.563286430488261.2069773982028Democrat
Georgia751.486367100774745.730459116859157.2422750846903Democrat
Georgia837.155325641909626.552075880812147.7585754030071Republican
Georgia923.416486118484813.97555495385932.8574172831105Republican
Georgia1041.57083484337432.136402831150351.0052668555977Republican
Georgia1127.086734339150815.109269569689939.0641991086116Republican
Georgia1243.04032676429733.70981530712152.3708382214731Republican
Georgia1381.575981090115869.507572886550193.6443892936816Democrat
Georgia1411.7649857933979-40.678608735752864.2085803225485Republican
Hawaii171.722538389350564.868604642238778.5764721364623Democrat
Hawaii272.424358428094859.771697831068485.0770190251211Democrat
Idaho135.296911902337330.355905101917840.2379187027569Republican
Idaho236.121965178918433.000723946479339.2432064113575Republican
Illinois180.006742451431970.829801816756589.1836830861073Democrat
Illinois278.953831675804976.379246957727581.5284163938823Democrat
Illinois359.332671065868650.885950577190267.7793915545469Democrat
Illinois484.699520645009279.494128253024889.9049130369935Democrat
Illinois571.827422577590268.342844500321575.3120006548589Democrat
Illinois655.578112284998149.396394296760949.5907407021302Democrat
Illinois784.306076052333581.47770156409287.1344505405749Democrat
Illinois887.77472987042877.399743824922398.1497159159337Democrat
Illinois969.694603445706466.755071307345472.6341355840674Democrat
Illinois1058.237668598061448.853965932010167.6213712641127Democrat
Illinois1160.945107204154857.162126558747364.7280878495624Democrat
Illinois1234.967631834294229.286878019929440.6483856486591Republican
Illinois1340.127267520519536.130796031369244.1237390096697Republican
Illinois1451.878587200538743.897248654802959.8599257462745Democrat
Illinois1531.012338698426726.253675200373635.7710021964798Republican
Illinois1631.844601135943627.759967957512735.9292343143745Republican
Illinois1740.410077180725133.697234771735547.1229195897148Republican
Indiana165.376527635757560.976240710967569.7768145605475Democrat
Indiana244.543807765130341.378451612012247.7091639182484Republican
Indiana335.312937914428631.073691731024639.5521840978326Republican
Indiana436.798995280492233.822016093835239.7759744671492Republican
Indiana540.238538990636935.662710904723844.8143670765499Republican
Indiana630.579164140765627.673186932670533.4851413488606Republican
Indiana761.109958221434658.071882756672664.1480336861966Democrat
Indiana840.606875077190334.282317527883346.9314326264972Republican
Indiana941.797152961367334.762567721497848.8317382012368Republican
Iowa144.160895935150839.830549436995548.4912424333061Republican
Iowa247.239601160487445.093227002240249.3859753187345Republican
Iowa360.027015682568753.880781119341166.1732502457962Democrat
Iowa442.106360941900238.062547212107846.1501746716927Republican
Kansas127.182145409341621.915318805600632.4489720130826Republican
Kansas243.083367029143740.035186102572846.1315479557147Republican
Kansas356.434488804039245.270666454397567.5983111536809Democrat
Kansas437.82157214899235.03754627916740.6055980188169Republican
Kentucky128.865914967080519.297052273154438.4347776610065Republican
Kentucky238.856501700365427.092157878919550.6208455218114Republican
Kentucky352.039854429498846.281266885583457.7984419734141Democrat
Kentucky438.573439360765331.610407635025445.5364710865052Republican
Kentucky520.15098008093515.086700544954825.2152596169152Republican
Kentucky634.393871469760725.269524595273543.5182183442479Republican
Louisiana116.135139332505311.363374946854120.9069037181564Republican
Louisiana284.098173589540778.287727761072289.9086194180093Democrat
Louisiana320.842412193438920.842412193438910.9241085867131Republican
Louisiana527.133687503057420.62348833212627.1336875030574Republican
Maine161.904803426067758.851974081364564.9576327707708Democrat
Maine260.415075643072254.869762533982665.9603887521617Democrat
Maryland136.698556302583133.443950045295239.953162559871Republican
Maryland266.432273943031262.789397890566670.0751499954958Democrat
Maryland375.348016779237470.22011601463180.4759175438438Democrat
Maryland472.346396235792362.646293550535382.0464989210493Democrat
Maryland569.314826802695165.100845679748973.5288079256413Democrat
Maryland662.486149656510956.311367966809968.6609313462118Democrat
Maryland776.4630657745372.654042132883380.2720894161767Democrat
Maryland870.781413935831766.24593836001175.3168895116524Democrat
Massachusetts191.088272217865680.1516041700695102.024940265662Democrat
Massachusetts275.962175777139867.383942159260984.5404093950188Democrat
Massachusetts381.627341979991472.767877635588390.4868063243945Democrat
Massachusetts474.400891298033366.677507273178282.1242753228884Democrat
Massachusetts581.012997025372973.198033495134588.8279605556114Democrat
Massachusetts667.137215499094159.591913683804874.6825173143833Democrat
Massachusetts788.979710621378681.098423007008596.8609982357487Democrat
Massachusetts896.305228194372391.0812107200073101.529245668737Democrat
Massachusetts973.801108341784964.361612218745483.2406044648244Democrat
Michigan136.161050584205728.952819747948543.3692814204628Republican
Michigan238.460631265052436.467815837995840.453446692109Republican
Michigan343.09040157320539.877290042843746.3035131035664Republican
Michigan434.224524269015231.520939599986436.928108938044Republican
Michigan549.738442452469942.062196542110557.4146883628293Republican
Michigan640.340634626921536.462185286244944.2190839675981Republican
Michigan741.431446144895436.032540493910546.8303517958804Republican
Michigan844.144848307060238.886619018988849.4030775951316Republican
Michigan947.046829375701339.47751670985554.6161420415477Republican
Michigan1035.899517226651633.373424800550638.4256096527526Republican
Michigan1150.385032608686745.53514517797839.5726781981859Democrat
Michigan1254.944229701710348.684121009727461.2043383936931Democrat
Michigan1387.122878584976679.335542986904894.9102141830484Democrat
Mississippi128.511230777192721.211987118657535.8104744357279Republican
Mississippi274.276330708392668.093778585665680.4588828311197Democrat
Mississippi332.108470553572823.126907664637741.0900334425079Republican
Mississippi414.13279268565581.1859655282479327.0796198430636Republican
Missouri174.169356302241569.65878371256178.679928891922Democrat
Missouri241.933441539137238.641525743209145.2253573350654Republican
Missouri331.806503911808823.741050493661339.8719573299563Republican
Missouri433.903876295655426.520557663477741.287194927833Republican
Missouri563.345613051577161.353813904169365.3374121989848Democrat
Missouri636.466754893229131.993423197562740.9400865888955Republican
Missouri732.679646042908828.475928818059736.8833632677579Republican
Missouri830.025240116098823.415410233651236.6350699985464Republican
Montana1Republican
Montana2Republican
Nebraska135.861557333308732.342214609570139.3809000570472Republican
Nebraska244.391841174412741.129950836965847.6537315118596Republican
Nebraska322.81570058873517.480100936464428.1513002410057Republican
Nevada164.054699545106660.742867590906967.3665314993064Democrat
Nevada235.171607539121228.623163033725141.7200520445173Republican
Nevada350.013342844371939.355618639143560.6710670496002Democrat
Nevada449.504749160817813.545466591322885.4640317303128Republican
New Hampshire155.259292264823449.70454115695960.8140433726879Democrat
New Hampshire255.384290850733550.252950622034860.5156310794322Democrat
New Jersey166.046383466706360.603966935647271.4887999977655Democrat
New Jersey240.696363611776236.367170251540945.0255569720115Republican
New Jersey355.714634474859252.492536037900958.9367329118175Democrat
New Jersey438.420665041074135.862510936900740.9788191452475Republican
New Jersey554.797553042621546.370076635403663.2250294498393Democrat
New Jersey662.32733298178859.499023895159565.1556420684165Democrat
New Jersey750.249128824263643.362727144240357.1355305042869Democrat
New Jersey856.420099121970647.920891780078564.9193064638627Democrat
New Jersey966.1318512744163.154791934753469.1089106140666Democrat
New Jersey1085.979438022379683.529708418519888.4291676262394Democrat
New Jersey1155.293011092637151.068669468687659.5173527165867Democrat
New Jersey1266.703074783768861.764166235204971.6419833323327Democrat
New Mexico158.107097384843949.560124825451466.6540699442363Democrat
New Mexico240.004557664661332.702893104751447.3062222245711Republican
New Mexico367.606987395694660.980185273882174.2337895175071Democrat
New York144.760541265942241.308506748329448.2125757835549Republican
New York238.989093647798335.170400591417142.8077867041795Republican
New York344.753418022427640.079610911517549.4272251333376Republican
New York445.936225762700240.617757969447251.2546935559531Republican
New York592.363733277036682.3008996476169102.426566906456Democrat
New York673.477778952983265.941321105077381.0142368008892Democrat
New York783.552113419873478.215387014104288.8888398256425Democrat
New York882.125796316688977.871460574009586.3801320593683Democrat
New York982.125688441982876.019130177458588.2322467065072Democrat
New York1088.797781178668175.278625164655102.316937192681Democrat
New York1149.561798785929939.433327528130759.6902700437291Republican
New York1274.855744514764767.770834928281981.9406541012476Democrat
New York1388.223717051406381.744645923315294.7027881794974Democrat
New York1472.173154529248867.967389616591976.3789194419058Democrat
New York1586.434818147683380.582593948053292.2870423473133Democrat
New York1697.680847604825892.6325378486564102.729157360995Democrat
New York1750.408781967628142.099094177436658.7184697578196Democrat
New York1866.169325659038751.848251148102280.4904001699753Democrat
New York1949.438551934833943.653848532313155.2232553373548Republican
New York2066.73759591175661.581830778083771.8933610454282Democrat
New York2139.523273867383331.875035683892347.1715120508742Republican
New York2239.241531034793130.500309967088347.9827521024978Republican
New York2338.231202283954532.507638192500443.9547663754086Republican
New York2439.970608936429134.662158411649545.2790594612087Republican
New York2556.545470367979746.05168755358467.0392531823754Democrat
New York2666.110658625975157.802798866946474.4185183850038Democrat
North Carolina151.503307088481934.526647833595268.4799663433686Democrat
North Carolina269.472400057696262.286796793040176.6580033223523Democrat
North Carolina336.445356973948327.359432978075345.5312809698212Republican
North Carolina458.775434889889145.61689015146571.9339796283131Democrat
North Carolina534.298003894738928.322223307260240.2737844822177Republican
North Carolina667.427060570802258.599974959250676.2541461823537Democrat
North Carolina743.913474224306932.521187663494755.305760785119Republican
North Carolina845.932293537672342.917747567484748.94683950786Republican
North Carolina937.209895135709132.227222954266442.1925673171517Republican
North Carolina1032.965597024461628.463359076843337.4678349720799Republican
North Carolina1145.873101970397640.981813153566850.7643907872285Republican
North Carolina1282.014868392376957.948796761409106.080940023345Democrat
North Carolina1343.854356409683227.031721737308660.6769910820578Republican
Ohio143.161955787063738.364148858004847.9597627161226Republican
Ohio237.15461817449534.676774611867639.6324617371224Republican
Ohio374.362636498008466.564910154422382.1603628415946Democrat
Ohio430.746456100756127.059443536597134.4334686649151Republican
Ohio532.627227496564729.974307721347235.2801472717821Republican
Ohio630.122057339016824.27694184017535.9671728378585Republican
Ohio731.202290097344720.852837038693841.5517431559956Republican
Ohio829.449716333351525.766797407791333.1326352589118Republican
Ohio964.320700773851261.108220221277767.5331813264247Democrat
Ohio1037.00408749616932.441804098342741.5663708939954Republican
Ohio1180.289926884103675.282321384968585.2975323832386Democrat
Ohio1240.398753116803437.630845874005943.166660359601Republican
Ohio1349.271762773714143.557277898566754.9862476488615Republican
Ohio1440.957099990524237.562323276374244.3518767046742Republican
Ohio1536.107364142164933.593321991458938.621406292871Republican
Oklahoma134.734980081893430.264778720557439.2051814432293Republican
Oklahoma226.818537593824318.537953314938135.0991218727104Republican
Oklahoma320.816672055219613.86877630500727.7645678054322Republican
Oklahoma431.677236636858522.703222113010540.6512511607066Republican
Oklahoma537.743462981462931.289057786222444.1978681767034Republican
Oregon163.864795311169359.372932809229168.3566578131095Democrat
Oregon237.635126710572634.353980746530540.9162726746148Republican
Oregon377.334880874006373.615167246878381.0545945011344Democrat
Oregon446.403851592266239.475944851530953.3317583330014Republican
Oregon550.394766196685246.489882831383954.2996495619866Democrat
Pennsylvania141.677532066122630.967367866020652.3876962662245Republican
Pennsylvania274.249981462944771.146134365780877.3538285601085Democrat
Pennsylvania364.457969301380353.03242250638675.8835160963746Democrat
Pennsylvania460.490850232361955.559028095053165.4226723696708Democrat
Pennsylvania562.00671984729249.751801040066574.2616386545175Democrat
Pennsylvania658.573811925322453.851143965653963.2964798849909Democrat
Pennsylvania752.570365930308647.633503163862357.5072286967549Democrat
Pennsylvania853.904631810266650.537047464470257.2722161560629Democrat
Pennsylvania930.180271411442925.039595582843735.3209472400421Republican
Pennsylvania1038.957788006117132.175956671626545.7396193406077Republican
Pennsylvania1141.151423845382131.161449466884151.1413982238802Republican
Pennsylvania1239.140998447732531.918037497603746.3639593978612Republican
Pennsylvania1537.442785741546629.712978731989445.1725927511039Republican
Pennsylvania1636.304918881850432.65107466448539.9587630992158Republican
Pennsylvania1740.739057804598433.406953931140648.0711616780562Republican
Rhode Island177.478405372216362.904294126861292.0525166175714Democrat
Rhode Island259.26023708871652.169203792225866.3512703852061Democrat
South Carolina138.747974588919631.046946437288346.4490027405508Republican
South Carolina236.128022190198129.005394811832643.2506495685635Republican
South Carolina547.565172418132133.991399709331161.1389451269332Republican
South Carolina673.201196863339767.330620733741979.0717729929376Democrat
South Carolina739.157979666606734.823107618671243.4928517145421Republican
Tennessee123.20105567148318.589345812033427.8127655309326Republican
Tennessee219.208277383691413.313697409514125.1028573578688Republican
Tennessee334.532950489613728.228251256989340.837649722238Republican
Tennessee434.856041056827826.541487952732643.1705941609229Republican
Tennessee555.548632542793639.365870121957671.7313949636296Democrat
Tennessee625.684494486363410.887777890574840.4812110821521Republican
Tennessee727.557264818658520.404287201130734.7102424361863Republican
Tennessee835.331501504781622.286416341287748.3765866682755Republican
Tennessee981.832318420649575.78814581678587.876491024514Democrat
Texas129.494756633341118.482921185179340.506592081503Republican
Texas239.00248662576127.20652602416850.798447227354Republican
Texas338.2740595697530.678771711577945.869347427922Republican
Texas420.859287092231512.602557809532229.1160163749309Republican
Texas535.584542247639527.917497203640343.2515872916387Republican
Texas765.737442450943650.021199955091581.4536849467957Democrat
Texas823.757809952897516.455002698190431.0606172076046Republican
Texas980.311190116784973.860249966255686.7621302673141Democrat
Texas1044.70721655733934.073494369241955.3409387454361Republican
Texas1235.200135294112926.618869280613943.7814013076119Republican
Texas1319.333078751523512.765268703155425.9008887998916Republican
Texas1438.995852548762831.37478012779346.6169249697327Republican
Texas1558.726399779000241.803228559259375.6495709987411Democrat
Texas1681.909451954298573.095576384029490.7233275245677Democrat
Texas1737.648926269401326.074059657881149.2237928809216Republican
Texas1879.989198038614171.459482784323688.5189132929047Democrat
Texas2089.105485800460678.0643391017768100.146632499144Democrat
Texas2137.577981921149828.948835550574246.2071282917253Republican
Texas2238.177512927686631.358577944662544.9964479107108Republican
Texas2350.081644594857340.833830922093459.3294582676212Democrat
Texas2438.208342004037926.888113647252349.5285703608235Republican
Texas2739.964178685447927.21681015927852.7115472116178Republican
Texas2887.844681020722570.8408360575154104.84852598393Democrat
Texas2984.484688072227272.371425897942696.5979502465118Democrat
Texas3089.124239647850883.220360168979695.0281191267219Democrat
Texas3245.934124893586515.821743975542476.0465058116306Republican
Texas3385.05054597700446.7311791040989123.369912849909Democrat
Texas3457.8422828512736.210567379208979.4739983233311Democrat
Texas3568.481951403951959.145647196438577.8182556114653Democrat
Texas3617.101818064568-18.120511941711852.3241480708477Republican
Utah133.500355094338630.20319751966736.7975126690103Republican
Utah241.911691317879338.344818129441545.4785645063171Republican
Utah332.195081249056624.725691049244539.6644714488687Republican
Utah445.75159358025135.0888185172325286.41436864327Republican
Vermont031.235564240306612.307300566603150.1638279140101Republican
Virginia138.081888904709329.313837773301846.8499400361168Republican
Virginia271.756000305767660.87537324325682.6366273682791Democrat
Virginia383.163310632829774.309093968629792.0175272970298Democrat
Virginia489.677372825928279.1928314960366100.16191415582Democrat
Virginia547.732169985889937.316169405921758.1481705658581Republican
Virginia622.658086499086514.570974292668530.7451987055046Republican
Virginia769.765182489545356.367872307866283.1624926712243Democrat
Virginia874.359656997299868.70481047767880.0145035169215Democrat
Virginia938.268294015049321.686265070769854.8503229593288Republican
Virginia1054.894825314539144.409538528781365.380112100297Democrat
Virginia1166.528787551757248.621510221712184.4360648818023Democrat
Washington158.134085514401553.455180719063162.8129903097399Democrat
Washington264.056469371447259.613773882758968.4991648601355Democrat
Washington344.211157528193540.885360766147247.5369542902397Republican
Washington433.73259921675229.821301640380537.6438967931235Republican
Washington540.007008983756936.944187519217743.0698304482961Republican
Washington662.171045590713659.043203954306565.2988872271208Democrat
Washington781.141043997633176.268418892864486.0136691024017Democrat
Washington851.510517545140937.008748011003666.0122870792782Democrat
Washington970.941248927170862.41837949716479.4641183571777Democrat
Washington1053.8803450310701-768.9791556493876.73984571144Democrat
West Virginia135.967386415640427.331084811356544.6036880199243Republican
West Virginia241.624742909464635.428682975970747.8208028429585Republican
Wisconsin141.727392743884937.806986176633445.6477993111363Republican
Wisconsin266.674975972347662.343925794604771.0060261500906Democrat
Wisconsin339.377530899921233.172472306725445.582589493117Republican
Wisconsin476.585565203148171.719563824594381.4515665817019Democrat
Wisconsin536.044893124483527.969907336130244.1198789128369Republican
Wisconsin738.519443389019934.470044328221842.5688424498179Republican
Wyoming030.50196335423426.833749192643634.1701775158243Republican

References

[1] U.S. Bureau of Economic Analysis, Real Gross Domestic Product [GDPC1], retrieved from FRED, Federal Reserve Bank of St. Louis; https://fred.stlouisfed.org/series/GDPC1.

[2] FiveThirtyEight, Generic Ballot. https://projects.fivethirtyeight.com/polls/generic-ballot/

[3] Gallup, Congress and the Public. https://news.gallup.com/poll/1600/congress-public.aspx