Pollster.com

Articles and Analysis

 

How Massachusetts Votes Shifted


MASenDens2.png
The distribution of the vote shifted for Martha Coakley but not for Scott Brown last night. That was the key to Brown's win.

The top left of the chart above shows the distribution of Coakley's vote compared to Brown's. Brown's better total shifts his distribution clearly to the right. That's not interesting. But the bottom row is very interesting. The bottom left panel compares Coakley (dark blue) with Obama's light blue distribution in 2008. She's well to the left, doing worse. Of course you'd expect drop-off from a presidential to a special election. But the bottom right panel is amazing. Brown's distribution almost exactly duplicates McCain's. In a January special election, Brown's vote is a clone of McCain's in a presidential contest. That is amazing.

Here is another way to look at it. Plot last night's vote by town against their party's candidate in 2008.
MAVoteShift2.png
Brown's votes are almost exactly on the 45-degree line showing equality between 2008 and 2010 vote totals by town. But not so the blue dots, which are all, yes every single one, well below the diagonal. Brown's total actually slightly improved upon McCain's. Coakley's total was just 56% of Obama's total.

The chart is powerful but the logarithmic scale makes the two clusters of points appear closer than they "really" are. Let's plot Coakley as a percent of Obama vote against Brown as a percent of McCain for a more compelling view.
MASenShares.png
Wow. The imbalance of performance is stark. Coakley's BEST town gave her 80% of Obama's vote. That's equal to Brown's WORST towns.  Even the towns Coakley won were places she was dramatically underperforming Obama.  And there are no pockets of strength visible here. Brown was doing over 100% except in a few blue towns but he even outperformed McCain in a number of towns that went for Coakley.

Of course this doesn't mean that Brown got exactly McCain's voters, since lots of individual switching could add up to these totals. But in the aggregate, Mass. in 2010 looks exactly like it did in 2008 on the Rep side. On the Dem side, a whole lot fewer voters.

 

Comments

I know a few things about polling, but I don't understand this post.

Normally Pollster.com writes in an accessible style. Could you maybe explain what distribution we are looking at, exactly?

____________________

stephen roop:

Just to be clear, here are the raw aggregate MA vote numbers on which this excellent comparison is based:

McCain MA 2008: 1,104,284
Brown MA 2010: 1,168,107 (106% 2008 McCain)

Obama MA 2008: 1,891,083
Coakley MA 2010: 1,058,682 (56% 2008 Obama)

____________________

Andrew Foland:

If you showed Brown % of McCain vote against McCain vote fraction that would tell you whether there was an enthusiasm gap or a voter-preference shift. (In short, "no strong correlation" means enthusiasm gap, anti-correlation means voter shift, and positive correlation is puzzling but means something like "local density-dependent enthusiasm gap".)

If I look at the centroids of the red and blue dot regions in the last plot, and use those as some proxy for original McCain vote, it seems as if the Brown points closer to the Coakley centroid have lower percentages, which would tend to mean positive correlation. But I'm not sure I'm really reading that correctly.

____________________

Farleftandproud:

Coakley ran the worst campaign I have ever seen in my life. I will say that it is a referendum on the Obama agenda, and the delays on the fact that the Dems in the house and senate take so long on a deal. Americans want results fast, and they want a president who can take charge. Obama didn't do that the past few months. I honestly think if I didn't know anything about politics and saw just how poorly Coakley came across by telling Catholics not to work at hospitals to provide emergency contraception, and she didn't explain why Brown defended waterboarding. She came across as abrasive, and nobody knew who Martha was. She went on a vacation for a week while the GOP operatives had a secret plan in the works to run a huge PR campaign against her. This is a victory that even Karl Rove couldn't have pulled off in Mass. Very very frustrating time to be a progressive. I still hate 60 vote fillbuster though. I think it should be 55. I support the majority rule system, and if we have to wait on 60 votes under this president we have, absolutely nothing will get passed, because the GOP would rather spend their time fillibustering than actually accomplishing anything.

____________________

Alex W:

What binning did you use for the distribution?

____________________

HansG-- sorry if it isn't clear. Writing at 4 in the morning may be part of it. The plots are of the distributions of votes, not percentage shares. The votes are on a log10 scale because of the wide range of magnitudes in sizes of Mass. towns.

AlexW, by binning I assume you mean the "width" as R calls it. The value I use is .4, which isn't intrinsically very meaningful. I settled on a value that showed a bit of detail but didn't become too rough. wid=.25 and the distribution is very erratic. .5-.6 and it oversmooths so there is no detail.

Since people sometimes ask, here is the code, though the formatter will probably eat it.


pdf(file="MASenDens2.pdf",width=9,height=9)
par(mfcol=c(2,2))
plot(density(log10(dem),wid=.4),xlim=c(1,5.5),ylim=c(0,1),col=4,lwd=4, main="Coakley Votes vs Brown Votes",axes="F",xlab="log10(Votes)")
axis(1,at=c(0,1,2,3,4,5), label=c(0,10,100,1000,10000,format(100000,scientific=F)))
axis(2)
lines(density(log10(rep),wid=.4),lwd=4,col=2)

plot(density(log10(dem),wid=.4),xlim=c(1,5.5),ylim=c(0,1),col=4,lwd=4, main="Coakley Votes vs Obama Votes",axes="F",xlab="log10(Votes)")
axis(1,at=c(0,1,2,3,4,5), label=c(0,10,100,1000,10000,format(100000,scientific=F)))
axis(2)
lines(density(log10(obama),wid=.4),lwd=4, col=bluesPal[5])

plot(density(log10(dem),wid=.4),type="n",axes="F",xlab="",ylab="",main="")

plot(density(log10(rep),wid=.4),xlim=c(1,5.5),ylim=c(0,1),col=2,lwd=7, main="Brown Votes vs McCain Votes",axes="F",xlab="log10(Votes)")
axis(1,at=c(0,1,2,3,4,5), label=c(0,10,100,1000,10000,format(100000,scientific=F)))
axis(2)
lines(density(log10(mccain),wid=.4),lwd=3,col=redsPal[3])
par(mfcol=c(1,1))
pavlogo(adj=-.5,padj=.85)
dev.off()

____________________

thanks to Charles for posting such a useful piece of code!
I can't wait to find out if it works or not and how to use it

____________________

thanks to Charles for posting such a useful piece of code!
I can't wait to find out if it works or not and how to use it

____________________



Post a comment




Please be patient while your comment posts - sometimes it takes a minute or two. To check your comment, please wait 60 seconds and click your browser's refresh button. Note that comments with three or more hyperlinks will be held for approval.

MAP - US, AL, AK, AZ, AR, CA, CO, CT, DE, FL, GA, HI, ID, IL, IN, IA, KS, KY, LA, ME, MD, MA, MI, MN, MS, MO, MT, NE, NV, NH, NJ, NM, NY, NC, ND, OH, OK, OR, PA, RI, SC, SD, TN, TX, UT, VT, VA, WA, WV, WI, WY, PR