Translate

Saturday, December 7, 2013

Whatcom County GE 2013 Wrap Up: Who Voted and Who Didn't: Part I

This post is long, wonky, has SQL console output formatted in small print and is generally ugly. On most browsers you can you use the keystrokes CTRL + to zoom out. Click to enlarge the graphs. Standard caveat for all my data is that I do my best to ensure accuracy. I don't recommend quoting or using my work unless you verify it first with your own analysis. I don't recommend reading this unless these types of numbers matter to you. - RMF

Many precincts showed high turnout percentages in hte 2013 General Election.

This chart ranks precincts by lack of participation or the inverse of turnout. Some important Democratic precincts showed abysmal turnout percentages indicative of  either (your choice): apathy, vote suppression, or ballot theft.

For my $10, I received a 12.03.2013 voter database history from the fine folks that work the election desk downtown; one of a number I have collected this year as I ponder whether or not to run for the 42nd LD Senate seat.  If nothing else, my skillsets in PostgresSQL are improving. Here we go into the data. 


INTO THE DATA
69,676 ballots were successfully counted in this years general election from a registered voting base of 127,242 as of 10/29/2013; the last official (e.g. non-provisional) day to register to vote. Here are the queries for those totals:

Select count(registrationnumber) from voterdb where registrationdate::date < '10/29/2013';
 count
--------
 127242

(1 row)

Select VotingMethoddesc_1,BallotCounted_1,Count(*) from voterdb where ballotcounted_1 LIKE '1' 
Group BY VotingMethoddesc_1,BallotCounted_1
ORDER BY COUNT DESC;
  votingmethoddesc_1  | ballotcounted_1 | count
----------------------+-----------------+-------
 Voted by Mail Ballot | 1               | 69658
 Provisional Voter    | 1               |    18

57,180 registrants who could have had their votes counted did not. Here's a look at why they were not:

Select VotingMethoddesc_1,BallotCounted_1,Count(*) from voterdb where ballotcounted_1 LIKE '0' 
Group BY VotingMethoddesc_1,BallotCounted_1
ORDER BY COUNT DESC;
          votingmethoddesc_1          | ballotcounted_1 | count
--------------------------------------+-----------------+-------
 Mail Ballot Issued but not Returned  | 0               | 56476
 Challenged - Too Late                | 0               |   320
 Challenged - No Signature Match      | 0               |   315
 Challenged - No Signature            | 0               |    55
 Challenged - No Ballot               | 0               |     5
 Challenged - Wrong Voter's Signature | 0               |     4
 Challenged - ID Required             | 0               |     3
 Challenged - Power of Attorney       | 0               |     2
(8 rows)

WHO DIDN'T GET COUNTED?
Discarding (for the moment) the 56,476 whose ballots were not returned or otherwise counted, 704 registrants had their ballots challenged for the reasons below.  These challenged ballots represent almost a precinct of ballots. They,also, were not counted Some simple observations come to mind: sign your ballot legibly and get it in on time or early. Highlights in red are mine.

Select VotingMethoddesc_1,BallotCounted_1,Count(*) from voterdb where ballotcounted_1 LIKE '0'
Group BY VotingMethoddesc_1,BallotCounted_1
Having Votingmethoddesc_1 <> 'Mail Ballot Issued but not Returned' 
ORDER BY COUNT DESC;
          votingmethoddesc_1          | ballotcounted_1 | count
--------------------------------------+-----------------+-------
 Challenged - Too Late                | 0               |   320
 Challenged - No Signature Match      | 0               |   315
 Challenged - No Signature            | 0               |    55
 Challenged - No Ballot               | 0               |     5
 Challenged - Wrong Voter's Signature | 0               |     4
 Challenged - ID Required             | 0               |     3
 Challenged - Power of Attorney       | 0               |     2
(7 rows)

Some precincts had more challenged ballots than others. Here is that top twenty query:

Select PrecinctID, SUM(Distinct count_prnct) AS CNTP from (Select PrecinctID,VotingMethoddesc_1,BallotCounted_1,Count(PrecinctID)
AS count_prnct from voterdb where ballotcounted_1 LIKE '0' 
Group BY VotingMethoddesc_1,BallotCounted_1,PrecinctID having Votingmethoddesc_1 <> 'Mail Ballot Issued but not Returned')
AS NVPrcnt GROUP BY PrecinctID ORDER BY CNTP DESC LIMIT 20;
 precinctid | cntp
------------+------
        231 |   13
        146 |   11
        144 |   11
        175 |    9
        127 |    9
        222 |    9
        232 |    9
        216 |    8
        237 |    8
        266 |    8
        153 |    8
        169 |    8
        233 |    8
        182 |    8
        171 |    7
        228 |    7
        227 |    7
        225 |    7
        219 |    7
        157 |    7
(20 rows)

Below is  the query for the top precinct ('231') for challenges.

Select PrecinctID,VotingMethoddesc_1,BallotCounted_1,Count(PrecinctID) AS count_prnct from voterdb where ballotcounted_1 LIKE '0' AND precinctID = 231
Group BY VotingMethoddesc_1,BallotCounted_1,PrecinctID having Votingmethoddesc_1 <> 'Mail Ballot Issued but not Returned' ORDER BY PrecinctID DESC;
 precinctid |       votingmethoddesc_1        | ballotcounted_1 | count_prnct
------------+---------------------------------+-----------------+-------------
        231 | Challenged - No Signature Match | 0               |           5
        231 | Challenged - No Signature       | 0               |           1
        231 | Challenged - Too Late           | 0               |           7
(3 rows)


THE PRECINCTS: GOOD, BAD, AND UNEVEN?
For the next queries, I create a series of views (tables) and join them to get the percentages for the 20 precinct with the highest turnouts and the 20 precincts with the highest (not) turning out. To simplify my query, I discarded all provisional and challenged votes (total 772 votes) and use only successfully returned  or not returned ballots: 

Create View Not_Returned AS
Select PrecinctID,VotingMethoddesc_1,Count(RegistrationNumber) As NotReturn from voterdb
Where VotingMethoddesc_1 LIKE 'Mail Ballot Issued but not Returned' Group BY VotingMethoddesc_1,PrecinctID;

Create View Voted_by_Mail AS
Select PrecinctID,VotingMethoddesc_1,Count(RegistrationNumber) As Voted from voterdb
Where VotingMethoddesc_1 LIKE 'Voted by Mail Ballot' 
Group BY VotingMethoddesc_1,PrecinctID;

Create View Joined AS Select Voted_by_Mail.PrecinctID,Voted_by_Mail.Voted,Not_Returned.NotReturn,((Not_Returned.NotReturn + Voted_by_Mail.Voted))
As Total from Voted_by_Mail,Not_Returned
WHERE Voted_by_Mail.PrecinctID = Not_Returned.PrecinctID;

13 of the top twenty precincts are Bellingham 200 series precincts. In fact, the top 64 Whatcom County precincts all had turnout of more than 60%.

Select PrecinctID,(Voted::float4 / Total::float4) * 100 as PCT_Voted FROM Joined ORDER BY PCT_VOTED DESC LIMIT 20;
 precinctid |    pct_voted
------------+------------------
        261 | 76.7241358757019
        180 |  76.104748249054
        251 | 75.2639532089233
        164 | 72.7999985218048
        264 | 72.7397263050079
        250 | 72.6190447807312
        210 | 72.4880397319794
        260 | 71.9387769699097
        222 | 71.9042658805847
        265 | 69.9472784996033
        144 |  69.767439365387
        138 | 69.7402596473694
        214 | 69.4942891597748
        215 | 68.8976407051086
        234 | 67.9408133029938
        243 | 67.1852886676788
        303 | 66.7994678020477
        232 | 66.7948722839355
        167 | 66.6666686534882
        173 |  66.380786895752
(20 rows)

Precinct maps can be found here for Bellingham and here for 'unincorporated' parts of Whatcom County. Essentially, the 200 series precincts define Bellingham and the 100 series define county areas outside of Bellingham. There are 178 precincts in all that include 300, 500, 600, 700, and 800 series. The 300 - 800 series precincts represent the small cities in Whatcom County. Full maps can be found here. That being said, turnout for the 200 series precincts seems (visually) to be more uneven than 100 series in turnout:




UNDER PERFORMING?

The top five under performing precincts are a mystery to me. I have ranked these precincts in turnout inverse or precinct votes NOT returned. The three WWU precincts (245, 252, 253) and the two Lummi  precincts (133,137) had 68 - 80 percent of their precinct votes not returned or not counted. The next eight 'under performing' precincts are all 200 series (Bellingham) precincts.

Select PrecinctID,(NotReturn::float4 / Total::float4) * 100 as PCT_NOT_Voted FROM Joined ORDER BY PCT_NOT_VOTED DESC LIMIT 20;
 precinctid |  pct_not_voted
------------+------------------
        245 | 80.0875246524811
        252 | 78.2163739204407
        133 | 73.7384140491486
        253 | 71.4676380157471
        137 | 68.5950398445129
        230 | 63.8121545314789
        204 | 62.0567381381989
        231 |  61.829024553299
        247 | 61.4285707473755
        212 | 59.3147754669189
        220 | 58.7257623672485
        229 | 58.3976805210114
        226 | 57.8291833400726
        142 | 57.0666670799255
        304 | 55.9748411178589
        257 | 55.8823525905609
        211 | 55.1116347312927
        509 |  55.098682641983
        401 | 54.6737194061279
        101 | 54.6121597290039
(20 rows)

No comments: