Twitter: @pakremp
New: What is the probability that your vote will decide the election? (with Andrew Gelman). R code available here.
New: Updating the Forecast on Election Night with R. R code available here.
Last update: Tuesday, November 8, 3:24am ET.
This is a Stan implementation of Drew Linzer’s dynamic Bayesian election forecasting model, with some tweaks to incorporate national poll data, pollster house effects, correlated priors on state-by-state election results and correlated polling errors.
For more details on the original model:
Linzer, D. 2013. “Dynamic Bayesian Forecasting of Presidential Elections in the States.” Journal of the American Statistical Association. 108(501): 124-134. (link)
The Stan and R files are available here.
1455 polls available since April 01, 2016 (including 1129 state polls and 326 national polls).
Note: the model does not account for the specific electoral vote allocation rules in place in Maine and Nebraska.
This graph shows Hillary Clinton’s share of the Clinton and Trump national vote, derived from the weighted average of latent state-by-state vote intentions (using the same state weights as in the 2012 presidential election, adjusted for state adult population growth between 2011 and 2015). In the model (described below), national vote intentions are defined as:
\[\pi^{clinton}[t, US] = \sum_{s \in S} \omega_s \cdot \textrm{logit}^{-1} (\mu_a[t] + \mu_b[t, s])\]
The thick line represents the median of posterior distribution of national vote intentions; the light blue area shows the 90% credible interval. The thin blue lines represent 100 draws from the posterior distribution. The fundamentals-based prior is shown with the dotted black line.
Each national poll (raw numbers, unadjusted for pollster house effects) is represented as a dot (darker dots indicate narrower margins of error). On average, Hillary Clinton’s national poll numbers seem to be running slightly below the level that would be consistent with the latent state-by-state vote intentions.
The following graphs show vote intention by state (with 100 draws from the posterior distribution represented as thin blue lines):
\[\pi^{clinton}[t,s] = \textrm{logit}^{-1} (\mu_a[t] + \mu_b[t, s])\]
States are sorted by predicted Clinton score on election day.
Most pro-Clinton polls:
Poll Origin | Median | P95 | P05 |
---|---|---|---|
Saint Leo University | 2.4 | 1.1 | 3.7 |
Public Religion Research Institute | 1.7 | 0.6 | 2.8 |
RABA Research | 1.6 | 0.4 | 2.8 |
AP | 1.5 | 0.3 | 2.8 |
Michigan State University | 1.4 | -0.3 | 3.4 |
GQR | 1.3 | 0.3 | 2.3 |
ICITIZEN | 1.3 | 0.0 | 2.6 |
UNH | 1.2 | -0.1 | 2.4 |
WNEU | 1.2 | -0.4 | 3.0 |
University of Delaware | 1.0 | -0.5 | 2.6 |
Most pro-Trump polls:
Poll Origin | Median | P95 | P05 |
---|---|---|---|
Rasmussen | -2.3 | -2.8 | -1.7 |
IBD | -1.7 | -2.7 | -0.7 |
Remington Research Group | -1.6 | -2.4 | -0.8 |
PPIC | -1.5 | -3.0 | -0.1 |
Clout Research | -1.4 | -3.2 | 0.3 |
Emerson College Polling Society | -1.4 | -2.8 | 0.1 |
Hampton University | -1.3 | -2.9 | 0.1 |
InsideSources | -1.3 | -3.1 | 0.5 |
Dan Jones | -1.2 | -2.8 | 0.2 |
Dixie Strategies | -1.2 | -2.7 | 0.2 |
The runmodel.R
R script downloads state and national polls from the HuffPost Pollster website as .csv
files before processing the data.
The model ignores third-party candidates and undecided voters. I restrict each poll’s sample to respondents declaring vote intentions for Clinton or Trump, so that \(N = N^{clinton} + N^{trump}\). (This is problematic for Utah).
When multiple polls are available by the same pollster, at the same date, and for the same state, I pick polls of likely voters rather than registered voters, and polls for which \(N^{clinton} + N^{trump}\) is the smallest (assuming that these are poll questions in which respondents are given the option to choose a third-party candidate, rather than questions in which respondents are only asked to choose between the two leading candidates).
Polls by the same pollster and of the same state with partially overlapping dates are dropped so that only non-overlapping polls are retained, starting from the most recent poll.
To account for the fact that polls can be conducted over several days, I set the poll date to the midpoint between the day the poll started and the day it ended.
The model is in the file state and national polls.stan
. It has a backward component, which aggregates poll history to derive unobserved latent vote intentions; and a forward component, which predicts how these unobserved latent vote intentions will evolve until election day. The backward and forward components are linked through priors about vote intention evolution: in each state, latent vote intentions follow a reverse random walk in which vote intentions “start” on election day \(T\) and evolve in random steps (correlated across states) as we go back in time. The starting point of the reverse random walk is the final state of vote intentions, which is assigned a reasonable prior, based on the Time-for-change, fundamentals-based electoral prediction model. The model reconciles the history of state and national polls with prior beliefs about final election results and about how vote intentions evolve.
For each poll \(i\), the number of respondents declaring they intended to vote for Hillary Clinton \(N^{clinton}_i\) is drawn from a binomial distribution:
\[ N^{clinton}_i \sim \textrm{Binomial}(N_i, \pi^{clinton}_i) \]
where \(N_i\) is poll sample size, and \(\pi^{clinton}_i\) is share of the Clinton vote for this poll.
The model treats national and state polls differently.
If poll \(i\) is a state poll, I use a day/state/pollster multilevel model:
\[\textrm{logit} (\pi^{clinton}_i) = \mu_a[t_i] + \mu_b[t_i, s_i] + \mu_c[p_i] + u_i + e[s_i]\]
What this model does is simply to decompose the log-odds of reported vote intentions towards Hillary Clinton \(\pi^{clinton}_i\) into a national component, shared across all states (\(\mu_a\)), a state-specific component (\(\mu_b\)), a pollster house effect (\(\mu_c\)), a poll-specific measurement noise term (\(u\)), and a polling error term (\(e\)) shared across all polls of the state (the higher \(e\), the more polls overestimate Hillary Clinton’s true score).
On the day of the last available poll \(t_{last}\), the national component \(\mu_a[t_{last}]\) is set to zero, so that the predicted share of the Clinton vote in state \(s\) (net of pollster house effects and measurement noise) after that date and until election day \(T\) is:
\[\pi^{clinton}_{ts} = \textrm{logit}^{-1} (\mu_b[t, s])\]
To reduce the number of parameters, the model only takes weekly values for \(\mu_b\), so that:
\[\mu_b[t, s] = \mu_b^{weekly}[w_t, s]\]
where \(w_t\) is the week of day \(t\).
If poll \(i\) is a national poll, I use the same multilevel approach (with random intercepts for pollster house effects \(\mu_c\)) but I add a little tweak: the share of the Clinton vote in a national poll should also reflect the weighted average of state-by-state scores at the time of the poll. I model the share of vote intentions in national polls in the following way:
\[\textrm{logit} (\pi^{clinton}_i) = \textrm{logit}\left( \sum_{s \in \{1 \dots S\}} \omega_s \cdot \textrm{logit}^{-1} (\mu_a[t_i] + \mu_b^{weekly}[w_{t_i}, s] + e[s]) \right) + \alpha + \mu_c[p_i] + u_i\]
where \(\omega_s\) represents the share of state \(s\) in the total votes of the set of polled states \(1 \dots S\) (based on 2012 turnout numbers adjusted for adult population growth in each state between 2011 and 2015). The \(\alpha\) parameter corrects for possible discrepancies between national polls and the weighted average of state polls. Possible sources of discrepancies may include:
The idea is that while national poll levels may be off and generally not very indicative of the state of the race, national poll changes may contain valuable information to update \(\mu_a\) and (to a lesser extent) \(\mu_b\) parameters.
In order to smooth out vote intentions by state and obtain latent vote intentions at dates in which no polls were conducted, I use 2 reverse random walk priors for \(\mu_a\) and \(\mu_b^{weekly}\) from \(t_{last}\) to April 1:
\[\mu_b^{weekly}[w_t-1, s] \sim \textrm{Normal}(\mu_b^{weekly}[w_t, s], \sigma_b \cdot \sqrt{7})\]
\[\mu_a[t-1] \sim \textrm{Normal}(\mu_a[t], \sigma_a)\]
Both \(\sigma_a\) and \(\sigma_b\) are given uniform priors between 0 and 0.05.
Their posterior marginal distributions are shown below. The median day-to-day total standard deviation of vote intentions is about 0.4%. The model seems to find that most of the changes in latent vote intentions are attributable to national swings rather than state-specific swings (national swings account on average for about 91% of the total day-to-day variance).
I use a multivariate normal distribution for the prior of the final outcome. Its mean is based on the Time-for-Change model – which predicts that Hillary Clinton should receive 48.6% of the national vote (based on Q2 GDP figures, the current President’s approval rating and number of terms). The prior expects state final scores to remain on average centered around \(48.6\% + \delta_s\), where \(\delta_s\) is the excess Obama performance relative to the national vote in 2012 in state \(s\).
\[\mu_b[T, 1 \dots S] \sim \textrm{Multivariate Normal}(\textrm{logit} (0.486 + \delta_{1 \dots S}), \mathbf{\Sigma})\]
For the covariance matrix \(\mathbf{\Sigma}\), I set the variance to 0.05 and the covariance to 0.025 for all states and pairs of states – which corresponds to a correlation coefficient of 0.5 across states.
This prior is relatively imprecise as to the expected final scores in any given state; for example, in a state like Virginia, which Obama won by 52% in 2012 (a score identical to his national score), Hillary Clinton is expected to get 48.6% of the vote, with a 95% certainty that her score will not fall below 38% or exceed 59%.
State scores are also expected to be correlated with each other. For example, according to the prior (before looking at polling data), there is only a 3.4% chance that Hillary Clinton will perform worse in Virginia than in Texas. If the priors were independent, this unlikely event could happen with a 10% probability.
The covariance matrix implies that the correlation between the 2012 state scores and 2016 state priors is expected to be about 0.94 (as opposed to 0.89 if covariances were set to zero). The simulated distribution of correlations between state priors and 2012 scores is in line with observed correlations of state scores with previous election results since 1988 [http://election.princeton.edu/2016/06/02/the-realignment-myth/].
To put it differently, the model does not have a very precise prior about final scores, but it does assume that most of this uncertainty is attributable to national-level swings in vote intentions.
From election day to the date of the latest available poll \(t_{last}\), vote intentions by state “start” at \(\mu_b[T,s]\) and follow a random walk with correlated steps across states:
\[\mu_b^{weekly}[w_t-1, 1 \dots S] \sim \textrm{Multivariate Normal}(\mu_b^{weekly}[w_t, 1 \dots S], \mathbf{\Sigma_b^{walk}})\]
I set \(\mathbf{\Sigma_b^{walk}}\) so that all variances equal \(0.015^2 \times 7\) and all covariances equal 0.00118 (\(\rho =\) 0.75). This implies a 0.4% standard deviation in daily vote intentions changes in a state where Hillary Clinton’s score is close to 50%. To put it differently, the prior is 95% confident that Hillary Clinton’s score in any given state where she is currently polling around 50% should not move up or down by more than 0% over the remaining 0 days until the election.
Each pollster \(p\) can be biased towards Clinton or Trump:
\[\mu_c[p] \sim \textrm{Normal}(0, \sigma_c)\]
\[\sigma_c \sim \textrm{Uniform}(0, 0.1)\]
I give the \(\alpha\) parameter a prior centered around the observed distance of polled state voters from the national vote in 2012 (this was useful until early September, when lots of solid red states had still not been polled and the average polled state voter was more pro-Clinton than the average US voter.):
\[\bar{\delta_S} = \sum_{s \in \{1 \dots S\}} \omega_s \cdot \pi^{obama'12}_s - \pi^{obama'12}\]
\[\alpha \sim \textrm{Normal}(\textrm{logit} (\bar{\delta_S}), 0.2)\]
The measurement noise term \(u_i\) is normally distributed around zero, with standard error \(\sigma_u^{national}\) for national polls, and \(\sigma_u^{state}\) for state polls. I give both standard errors a uniform distribution between 0 and 0.10.
\[\sigma_u^{national} \sim \textrm{Uniform}(0, 0.1)\] \[\sigma_u^{state} \sim \textrm{Uniform}(0, 0.1)\]
To account for the possibility that polls might be off on average, even after adjusting for pollster house effects, the model includes a polling error term shared by all polls of the same state \(e[s]\). For example, the presence of an unexpectedly large share of Trump voters (undetected by the polls) in a given state would translate into large positive \(e\) values for that state. This polling error will remain unknown until election day; however it can be included in the form of an unidentified random parameter in the likelihood of the model, that increases the uncertainty in the posterior distribution of \(\mu_a\) and \(\mu_b\).
Because I expect polling errors to be correlated across states, I use a multivariate normal distribution:
\[e \sim \textrm{Multivariate Normal}(0, \mathbf{\Sigma_e})\]
To construct \(\mathbf{\Sigma_e}\), I set the variance to \(0.04^2\) and the covariance to 0.00175; this corresponds to a standard deviation of about 1 percentage point for a state in which Clinton’s score is close to 50% (or a 95% certainty that polls are not off by more than 2 percentage points either way); and a 0.7 correlation of polling errors across states.
Entry Date | Source | State | % Clinton / (Clinton + Trump) | % Trump / (Clinton + Trump) | N (Clinton + Trump) |
---|---|---|---|---|---|
2016-11-08 | SurveyMonkey | AK | 37.2 | 62.8 | 319 |
2016-11-08 | SurveyMonkey | AL | 39.6 | 60.4 | 1029 |
2016-11-08 | SurveyMonkey | AR | 37.8 | 62.2 | 837 |
2016-11-08 | SurveyMonkey | AZ | 51.1 | 48.9 | 2296 |
2016-11-08 | SurveyMonkey | CA | 67.8 | 32.2 | 2359 |
2016-11-08 | SurveyMonkey | CO | 54.8 | 45.2 | 2333 |
2016-11-08 | SurveyMonkey | CT | 60.2 | 39.8 | 1221 |
2016-11-08 | SurveyMonkey | DE | 57.3 | 42.7 | 327 |
2016-11-08 | SurveyMonkey | FL | 54.8 | 45.2 | 3806 |
2016-11-08 | SurveyMonkey | GA | 50.0 | 50.0 | 2177 |
2016-11-08 | SurveyMonkey | HI | 64.2 | 35.8 | 345 |
2016-11-08 | SurveyMonkey | IA | 38.8 | 61.2 | 1514 |
2016-11-08 | SurveyMonkey | ID | 35.1 | 64.9 | 471 |
2016-11-08 | SurveyMonkey | IL | 60.7 | 39.3 | 1622 |
2016-11-08 | SurveyMonkey | IN | 39.8 | 60.2 | 1496 |
2016-11-08 | SurveyMonkey | KS | 43.0 | 57.0 | 1127 |
2016-11-08 | SurveyMonkey | KY | 42.2 | 57.8 | 1184 |
2016-11-08 | SurveyMonkey | LA | 43.3 | 56.7 | 884 |
2016-11-08 | SurveyMonkey | MA | 67.8 | 32.2 | 1199 |
2016-11-08 | SurveyMonkey | MD | 64.8 | 35.2 | 1070 |
2016-11-08 | SurveyMonkey | ME | 51.8 | 48.2 | 662 |
2016-11-08 | SurveyMonkey | MI | 50.0 | 50.0 | 2768 |
2016-11-08 | SurveyMonkey | MN | 53.5 | 46.5 | 1111 |
2016-11-08 | SurveyMonkey | MO | 45.5 | 54.5 | 1204 |
2016-11-08 | SurveyMonkey | MS | 43.5 | 56.5 | 661 |
2016-11-08 | SurveyMonkey | MT | 35.4 | 64.6 | 368 |
2016-11-08 | SurveyMonkey | NC | 54.4 | 45.6 | 2813 |
2016-11-08 | SurveyMonkey | ND | 35.6 | 64.4 | 272 |
2016-11-08 | SurveyMonkey | NE | 39.8 | 60.2 | 869 |
2016-11-08 | SurveyMonkey | NH | 57.0 | 43.0 | 599 |
2016-11-08 | SurveyMonkey | NJ | 57.3 | 42.7 | 1226 |
2016-11-08 | SurveyMonkey | NM | 47.4 | 52.6 | 584 |
2016-11-08 | SurveyMonkey | NV | 52.3 | 47.7 | 1062 |
2016-11-08 | SurveyMonkey | NY | 64.0 | 36.0 | 1965 |
2016-11-08 | SurveyMonkey | OH | 48.9 | 51.1 | 2517 |
2016-11-08 | SurveyMonkey | OK | 35.6 | 64.4 | 1144 |
2016-11-08 | SurveyMonkey | OR | 58.6 | 41.4 | 1388 |
2016-11-08 | SurveyMonkey | PA | 50.0 | 50.0 | 2504 |
2016-11-08 | SurveyMonkey | RI | 55.8 | 44.2 | 357 |
2016-11-08 | SurveyMonkey | SC | 46.2 | 53.8 | 1545 |
2016-11-08 | SurveyMonkey | SD | 40.7 | 59.3 | 395 |
2016-11-08 | SurveyMonkey | TN | 42.9 | 57.1 | 1304 |
2016-11-08 | SurveyMonkey | TX | 47.2 | 52.8 | 2678 |
2016-11-08 | SurveyMonkey | UT | 56.7 | 43.3 | 991 |
2016-11-08 | SurveyMonkey | VA | 54.4 | 45.6 | 1965 |
2016-11-08 | SurveyMonkey | VT | 66.3 | 33.7 | 390 |
2016-11-08 | SurveyMonkey | WA | 61.2 | 38.8 | 1233 |
2016-11-08 | SurveyMonkey | WI | 51.1 | 48.9 | 1976 |
2016-11-08 | SurveyMonkey | WV | 35.3 | 64.7 | 401 |
2016-11-07 | ABC | – | 52.2 | 47.8 | 1998 |
2016-11-07 | Angus Reid | – | 52.2 | 47.8 | 1024 |
2016-11-07 | Bloomberg | – | 51.8 | 48.2 | 679 |
2016-11-07 | CBS | – | 52.3 | 47.7 | 1226 |
2016-11-07 | FOX | – | 52.2 | 47.8 | 1191 |
2016-11-07 | Franklin Pierce | – | 52.2 | 47.8 | 928 |
2016-11-07 | IBD | – | 48.8 | 51.2 | 862 |
2016-11-07 | Lucid | – | 52.9 | 47.1 | 791 |
2016-11-07 | Monmouth University | – | 53.2 | 46.8 | 703 |
2016-11-07 | Rasmussen | – | 51.1 | 48.9 | 1320 |
2016-11-07 | UPI | – | 51.6 | 48.4 | 1544 |
2016-11-07 | YouGov | – | 52.3 | 47.7 | 3155 |
2016-11-07 | UPI | AK | 43.6 | 56.4 | 290 |
2016-11-07 | Ipsos | AL | 41.3 | 58.7 | 538 |
2016-11-07 | UPI | AL | 38.9 | 61.1 | 324 |
2016-11-07 | Ipsos | AR | 41.8 | 58.2 | 469 |
2016-11-07 | UPI | AR | 39.4 | 60.6 | 304 |
2016-11-07 | Data Orbital | AZ | 48.4 | 51.6 | 500 |
2016-11-07 | Ipsos | AZ | 47.2 | 52.8 | 763 |
2016-11-07 | UPI | AZ | 46.2 | 53.8 | 329 |
2016-11-07 | Ipsos | CA | 64.8 | 35.2 | 1268 |
2016-11-07 | UPI | CA | 61.1 | 38.9 | 482 |
2016-11-07 | Ipsos | CO | 53.3 | 46.7 | 626 |
2016-11-07 | Remington Research Group | CO | 50.6 | 49.4 | 1546 |
2016-11-07 | UPI | CO | 53.2 | 46.8 | 322 |
2016-11-07 | Ipsos | CT | 55.6 | 44.4 | 464 |
2016-11-07 | UPI | CT | 57.9 | 42.1 | 311 |
2016-11-07 | UPI | DE | 56.2 | 43.8 | 295 |
2016-11-07 | Ipsos | FL | 50.5 | 49.5 | 1210 |
2016-11-07 | Opinion Savvy | FL | 51.1 | 48.9 | 802 |
2016-11-07 | Quinnipiac | FL | 50.5 | 49.5 | 804 |
2016-11-07 | Remington Research Group | FL | 48.4 | 51.6 | 2187 |
2016-11-07 | UPI | FL | 50.0 | 50.0 | 412 |
2016-11-07 | CBS | GA | 46.7 | 53.3 | 915 |
2016-11-07 | Ipsos | GA | 46.7 | 53.3 | 622 |
2016-11-07 | Landmark | GA | 48.4 | 51.6 | 1140 |
2016-11-07 | UPI | GA | 46.8 | 53.2 | 344 |
2016-11-07 | UPI | HI | 67.7 | 32.3 | 296 |
2016-11-07 | Ipsos | IA | 50.0 | 50.0 | 524 |
2016-11-07 | UPI | IA | 49.5 | 50.5 | 325 |
2016-11-07 | Ipsos | ID | 36.1 | 63.9 | 270 |
2016-11-07 | UPI | ID | 35.5 | 64.5 | 299 |
2016-11-07 | Ipsos | IL | 56.7 | 43.3 | 703 |
2016-11-07 | UPI | IL | 57.4 | 42.6 | 379 |
2016-11-07 | Ipsos | IN | 41.3 | 58.7 | 498 |
2016-11-07 | UPI | IN | 45.7 | 54.3 | 318 |
2016-11-07 | Ipsos | KS | 41.3 | 58.7 | 477 |
2016-11-07 | UPI | KS | 41.9 | 58.1 | 305 |
2016-11-07 | Ipsos | KY | 39.6 | 60.4 | 625 |
2016-11-07 | UPI | KY | 37.5 | 62.5 | 315 |
2016-11-07 | Ipsos | LA | 40.9 | 59.1 | 557 |
2016-11-07 | UPI | LA | 42.1 | 57.9 | 313 |
2016-11-07 | Ipsos | MA | 59.6 | 40.4 | 456 |
2016-11-07 | UPI | MA | 61.5 | 38.5 | 317 |
2016-11-07 | Ipsos | MD | 62.2 | 37.8 | 648 |
2016-11-07 | UPI | MD | 59.6 | 40.4 | 309 |
2016-11-07 | Ipsos | ME | 54.5 | 45.5 | 234 |
2016-11-07 | UPI | ME | 56.8 | 43.2 | 293 |
2016-11-07 | Ipsos | MI | 50.5 | 49.5 | 554 |
2016-11-07 | UPI | MI | 52.1 | 47.9 | 314 |
2016-11-07 | Ipsos | MN | 55.0 | 45.0 | 610 |
2016-11-07 | UPI | MN | 52.1 | 47.9 | 317 |
2016-11-07 | Ipsos | MO | 45.5 | 54.5 | 736 |
2016-11-07 | UPI | MO | 47.3 | 52.7 | 353 |
2016-11-07 | Ipsos | MS | 40.4 | 59.6 | 345 |
2016-11-07 | UPI | MS | 43.8 | 56.2 | 317 |
2016-11-07 | UPI | MT | 43.2 | 56.8 | 322 |
2016-11-07 | Ipsos | NC | 49.5 | 50.5 | 604 |
2016-11-07 | NYT Upshot | NC | 50.0 | 50.0 | 704 |
2016-11-07 | Quinnipiac | NC | 51.1 | 48.9 | 800 |
2016-11-07 | Remington Research Group | NC | 48.4 | 51.6 | 2414 |
2016-11-07 | UPI | NC | 49.5 | 50.5 | 339 |
2016-11-07 | UPI | ND | 41.5 | 58.5 | 289 |
2016-11-07 | Ipsos | NE | 37.6 | 62.4 | 298 |
2016-11-07 | UPI | NE | 40.4 | 59.6 | 320 |
2016-11-07 | Ipsos | NH | 51.2 | 48.8 | 272 |
2016-11-07 | UNH | NH | 56.3 | 43.7 | 602 |
2016-11-07 | UPI | NH | 53.3 | 46.7 | 285 |
2016-11-07 | Ipsos | NJ | 55.8 | 44.2 | 566 |
2016-11-07 | UPI | NJ | 57.3 | 42.7 | 334 |
2016-11-07 | Albuquerque Journal | NM | 52.9 | 47.1 | 428 |
2016-11-07 | Ipsos | NM | 51.9 | 48.1 | 217 |
2016-11-07 | UPI | NM | 55.3 | 44.7 | 280 |
2016-11-07 | Ipsos | NV | 51.7 | 48.3 | 497 |
2016-11-07 | Remington Research Group | NV | 49.5 | 50.5 | 1632 |
2016-11-07 | UPI | NV | 51.6 | 48.4 | 307 |
2016-11-07 | Ipsos | NY | 60.7 | 39.3 | 1162 |
2016-11-07 | UPI | NY | 60.8 | 39.2 | 444 |
2016-11-07 | Ipsos | OH | 50.5 | 49.5 | 721 |
2016-11-07 | Remington Research Group | OH | 49.4 | 50.6 | 2276 |
2016-11-07 | TargetSmart | OH | 48.2 | 51.8 | 991 |
2016-11-07 | UPI | OH | 49.5 | 50.5 | 328 |
2016-11-07 | Ipsos | OK | 33.0 | 67.0 | 604 |
2016-11-07 | UPI | OK | 35.1 | 64.9 | 313 |
2016-11-07 | Ipsos | OR | 56.0 | 44.0 | 534 |
2016-11-07 | UPI | OR | 54.3 | 45.7 | 300 |
2016-11-07 | CBS | PA | 51.1 | 48.9 | 819 |
2016-11-07 | Ipsos | PA | 51.6 | 48.4 | 888 |
2016-11-07 | Remington Research Group | PA | 50.5 | 49.5 | 2442 |
2016-11-07 | UPI | PA | 50.5 | 49.5 | 370 |
2016-11-07 | UPI | RI | 61.5 | 38.5 | 298 |
2016-11-07 | Ipsos | SC | 47.3 | 52.7 | 574 |
2016-11-07 | UPI | SC | 44.2 | 55.8 | 321 |
2016-11-07 | UPI | SD | 42.1 | 57.9 | 296 |
2016-11-07 | Ipsos | TN | 41.9 | 58.1 | 708 |
2016-11-07 | UPI | TN | 41.5 | 58.5 | 319 |
2016-11-07 | Ipsos | TX | 44.3 | 55.7 | 1067 |
2016-11-07 | UPI | TX | 42.6 | 57.4 | 444 |
2016-11-07 | CBS | UT | 36.5 | 63.5 | 480 |
2016-11-07 | Ipsos | UT | 45.2 | 54.8 | 388 |
2016-11-07 | UPI | UT | 39.4 | 60.6 | 227 |
2016-11-07 | Christopher Newport | VA | 53.3 | 46.7 | 1074 |
2016-11-07 | Ipsos | VA | 52.9 | 47.1 | 553 |
2016-11-07 | Remington Research Group | VA | 51.1 | 48.9 | 2768 |
2016-11-07 | UPI | VA | 53.2 | 46.8 | 323 |
2016-11-07 | UPI | VT | 65.3 | 34.7 | 290 |
2016-11-07 | Ipsos | WA | 55.3 | 44.7 | 734 |
2016-11-07 | UPI | WA | 58.9 | 41.1 | 312 |
2016-11-07 | Ipsos | WI | 53.5 | 46.5 | 724 |
2016-11-07 | Remington Research Group | WI | 54.4 | 45.6 | 2448 |
2016-11-07 | UPI | WI | 54.3 | 45.7 | 350 |
2016-11-07 | Ipsos | WV | 37.0 | 63.0 | 388 |
2016-11-07 | UPI | WV | 37.8 | 62.2 | 278 |
2016-11-07 | UPI | WY | 29.5 | 70.5 | 304 |
With 4 chains and 2000 iterations (the first 1000 iterations of each chain are discarded), the model runs in less than 15 minutes on my 4-core Intel i7 MacBookPro.
## [1] "Inference for Stan model: state and national polls."
## [2] "4 chains, each with iter=2000; warmup=1000; thin=1; "
## [3] "post-warmup draws per chain=1000, total post-warmup draws=4000."
## [4] ""
## [5] " mean se_mean sd 2.5% 25% 50% 75% 97.5% n_eff Rhat"
## [6] "alpha -0.01 0 0.01 -0.03 -0.02 -0.01 -0.01 0.00 2401 1.00"
## [7] "sigma_c 0.05 0 0.01 0.04 0.04 0.05 0.05 0.06 966 1.00"
## [8] "sigma_u_state 0.06 0 0.00 0.05 0.06 0.06 0.06 0.07 1114 1.00"
## [9] "sigma_u_national 0.02 0 0.01 0.01 0.01 0.02 0.02 0.03 678 1.01"
## [10] "sigma_walk_a_past 0.02 0 0.00 0.01 0.01 0.02 0.02 0.02 1806 1.00"
## [11] "sigma_walk_b_past 0.01 0 0.00 0.00 0.00 0.01 0.01 0.01 808 1.01"
## [12] "mu_b[33,2] -0.26 0 0.07 -0.40 -0.31 -0.26 -0.21 -0.13 3390 1.00"
## [13] "mu_b[33,3] -0.43 0 0.07 -0.56 -0.48 -0.43 -0.39 -0.30 3389 1.00"
## [14] "mu_b[33,4] -0.41 0 0.07 -0.54 -0.46 -0.41 -0.37 -0.29 3060 1.00"
## [15] "mu_b[33,5] -0.08 0 0.06 -0.20 -0.12 -0.08 -0.04 0.04 3090 1.00"
## [16] "mu_b[33,6] 0.59 0 0.06 0.47 0.54 0.59 0.63 0.70 2904 1.00"
## [17] "mu_b[33,7] 0.10 0 0.06 -0.01 0.06 0.10 0.14 0.21 2811 1.00"
## [18] "mu_b[33,8] 0.29 0 0.07 0.16 0.24 0.29 0.33 0.42 2551 1.00"
## [19] "mu_b[33,9] 0.33 0 0.07 0.19 0.29 0.33 0.38 0.46 2519 1.00"
## [20] "mu_b[33,10] 0.03 0 0.06 -0.08 -0.01 0.03 0.07 0.15 2639 1.00"
## [21] "mu_b[33,11] -0.09 0 0.06 -0.20 -0.13 -0.09 -0.05 0.02 2690 1.00"
## [22] "mu_b[33,12] 0.61 0 0.07 0.47 0.56 0.61 0.66 0.76 3246 1.00"
## [23] "mu_b[33,13] -0.11 0 0.06 -0.23 -0.15 -0.11 -0.07 0.02 2523 1.00"
## [24] "mu_b[33,14] -0.58 0 0.07 -0.71 -0.62 -0.58 -0.53 -0.44 3021 1.00"
## [25] "mu_b[33,15] 0.37 0 0.06 0.25 0.33 0.37 0.41 0.49 3025 1.00"
## [26] "mu_b[33,16] -0.31 0 0.06 -0.43 -0.35 -0.31 -0.27 -0.19 2560 1.00"
## [27] "mu_b[33,17] -0.31 0 0.06 -0.44 -0.36 -0.31 -0.27 -0.19 2769 1.00"
## [28] "mu_b[33,18] -0.48 0 0.07 -0.61 -0.53 -0.48 -0.44 -0.35 3138 1.00"
## [29] "mu_b[33,19] -0.34 0 0.06 -0.46 -0.38 -0.34 -0.29 -0.22 2601 1.00"
## [30] "mu_b[33,20] 0.59 0 0.06 0.46 0.54 0.59 0.63 0.71 2665 1.00"
## [31] "mu_b[33,21] 0.63 0 0.06 0.51 0.59 0.63 0.67 0.76 2779 1.00"
## [32] "mu_b[33,22] 0.17 0 0.06 0.05 0.13 0.17 0.21 0.30 2637 1.00"
## [33] "mu_b[33,23] 0.09 0 0.06 -0.03 0.05 0.09 0.13 0.21 2482 1.00"
## [34] "mu_b[33,24] 0.16 0 0.06 0.04 0.12 0.16 0.20 0.29 3071 1.00"
## [35] "mu_b[33,25] -0.21 0 0.06 -0.33 -0.26 -0.22 -0.17 -0.09 2751 1.00"
## [36] "mu_b[33,26] -0.23 0 0.07 -0.36 -0.28 -0.23 -0.19 -0.10 3336 1.00"
## [37] "mu_b[33,27] -0.39 0 0.07 -0.53 -0.44 -0.39 -0.34 -0.25 3224 1.00"
## [38] "mu_b[33,28] 0.03 0 0.06 -0.09 -0.02 0.03 0.07 0.14 2565 1.00"
## [39] "mu_b[33,29] -0.47 0 0.07 -0.62 -0.52 -0.47 -0.42 -0.33 3158 1.00"
## [40] "mu_b[33,30] -0.43 0 0.07 -0.56 -0.48 -0.43 -0.38 -0.30 2778 1.00"
## [41] "mu_b[33,31] 0.10 0 0.06 -0.01 0.06 0.10 0.14 0.22 2962 1.00"
## [42] "mu_b[33,32] 0.32 0 0.06 0.20 0.27 0.32 0.36 0.44 2863 1.00"
## [43] "mu_b[33,33] 0.15 0 0.06 0.03 0.11 0.15 0.19 0.27 2797 1.00"
## [44] "mu_b[33,34] 0.02 0 0.06 -0.10 -0.02 0.02 0.06 0.14 2634 1.00"
## [45] "mu_b[33,35] 0.49 0 0.06 0.37 0.45 0.49 0.54 0.62 2690 1.00"
## [46] "mu_b[33,36] -0.03 0 0.06 -0.15 -0.08 -0.03 0.01 0.08 2644 1.00"
## [47] "mu_b[33,37] -0.60 0 0.07 -0.73 -0.65 -0.60 -0.56 -0.47 3293 1.00"
## [48] "mu_b[33,38] 0.24 0 0.06 0.12 0.20 0.24 0.28 0.37 3050 1.00"
## [49] "mu_b[33,39] 0.09 0 0.06 -0.02 0.05 0.09 0.13 0.21 2499 1.00"
## [50] "mu_b[33,40] 0.33 0 0.07 0.19 0.28 0.33 0.38 0.47 2861 1.00"
## [51] "mu_b[33,41] -0.14 0 0.06 -0.27 -0.19 -0.14 -0.10 -0.02 2802 1.00"
## [52] "mu_b[33,42] -0.40 0 0.07 -0.53 -0.44 -0.40 -0.35 -0.26 3348 1.00"
## [53] "mu_b[33,43] -0.37 0 0.07 -0.49 -0.41 -0.37 -0.32 -0.24 2938 1.00"
## [54] "mu_b[33,44] -0.21 0 0.06 -0.33 -0.25 -0.21 -0.17 -0.09 2533 1.00"
## [55] "mu_b[33,45] -0.30 0 0.06 -0.42 -0.34 -0.30 -0.26 -0.18 2842 1.00"
## [56] "mu_b[33,46] 0.14 0 0.06 0.02 0.10 0.14 0.18 0.26 2848 1.00"
## [57] "mu_b[33,47] 0.73 0 0.07 0.58 0.68 0.73 0.78 0.87 2971 1.00"
## [58] "mu_b[33,48] 0.31 0 0.06 0.19 0.27 0.32 0.36 0.44 3109 1.00"
## [59] "mu_b[33,49] 0.11 0 0.06 0.00 0.07 0.11 0.15 0.23 2753 1.00"
## [60] "mu_b[33,50] -0.58 0 0.07 -0.71 -0.63 -0.58 -0.54 -0.45 3174 1.00"
## [61] "mu_b[33,51] -0.93 0 0.08 -1.07 -0.98 -0.93 -0.88 -0.78 3328 1.00"
## [62] ""
## [63] "Samples were drawn using NUTS(diag_e) at Tue Nov 8 09:01:10 2016."
## [64] "For each parameter, n_eff is a crude measure of effective sample size,"
## [65] "and Rhat is the potential scale reduction factor on split chains (at "
## [66] "convergence, Rhat=1)."