Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2020 General Election Precinct Results #28

78 of 83 tasks
dwillis opened this issue Nov 14, 2020 · 4 comments
78 of 83 tasks

2020 General Election Precinct Results #28

dwillis opened this issue Nov 14, 2020 · 4 comments


Copy link

dwillis commented Nov 14, 2020

Using Tabula, OCR or whatever method you can, parse precinct-level results for the following counties. Original sources are in individual county files in the sources-mi repository.

The goal is to create a single CSV file for each county, with the following headers:

county, precinct, office, district, party, candidate, votes

Here's an example of a finished CSV file. The files should go in the 2020 folder in this repository and should have the following filename structure:

20201103__mi__general__{county}__precinct.csv, where county is the lower case version of the county name, with punctuation removed.

If the county file also provides a breakdown of votes by method, include that using the following headers, where applicable:

early_voting, election_day, provisional, mail

If there are other possible vote types, include them, using a lowercase version of the vote type with underscores instead of spaces for the column name.

Include the following offices:

  • Registered Voters (if available)
  • Ballots Cast (if available)
  • Straight Party
  • President
  • U.S. Senate
  • U.S. House
  • State Senate
  • State House

If a county provides precinct results for Write-in candidates, they should be grouped in a single row for each precinct and office with a candidate value of Write-ins.

If a county provides Under Votes or Over Votes, those should be recorded in the same way, with a single row per precinct and office with Over Votes and Under Votes as the candidate values.

  • Alcona
  • Alger
  • Allegan
  • Alpena
  • Antrim
  • Arenac
  • Baraga
  • Barry
  • Bay
  • Benzie
  • Berrien
  • Branch
  • Calhoun
  • Cass
  • Charlevoix
  • Cheboygan
  • Chippewa
  • Clare
  • Clinton
  • Crawford
  • Delta
  • Dickinson
  • Eaton
  • Emmet
  • Genesee
  • Gladwin
  • Gogebic
  • Grand Traverse
  • Gratiot
  • Hillsdale
  • Houghton
  • Huron
  • Ingham
  • Ionia
  • Iosco
  • Iron
  • Isabella
  • Jackson
  • Kalamazoo
  • Kalkaska
  • Kent
  • Keweenaw
  • Lake
  • Lapeer
  • Leelanau
  • Lenawee
  • Livingston
  • Luce
  • Mackinac
  • Macomb
  • Manistee
  • Marquette
  • Mason
  • Mecosta
  • Menominee
  • Midland
  • Missaukee
  • Monroe
  • Montcalm
  • Montmorency
  • Muskegon
  • Newaygo
  • Oakland
  • Oceana
  • Ogemaw
  • Ontonagon
  • Osceola
  • Oscoda
  • Otsego
  • Ottawa
  • Presque Isle
  • Roscommon
  • Saginaw
  • St. Clair
  • St. Joseph
  • Sanilac
  • Schoolcraft
  • Shiawassee
  • Tuscola
  • Van Buren
  • Washtenaw
  • Wayne
  • Wexford
Copy link

saewitz commented Feb 13, 2021

I think Cheboygan County may be missing 20 votes for Trump. I summed his votes and compared it to the official results It could be that the state and county results aren't the same.

I think Monroe County may be missing 12 votes for Trump and and 5 votes for Biden for the same reason as above. The state election results document and county election results document aren't the same; the data in this repository does match the county election results document.

Copy link

mileswwatkins commented Feb 21, 2021

Started trying to match Michigan's precinct IDs to our GIS boundaries, and have seen this one class of issues in the CSVs so far. Thank again for extracting and providing these data!

  • Marquette has duplicated rows for 36 precincts; see, for example, Biden presidential rows for Chocolay Township, Precinct 2 or Michigamme Township, Precinct 1
  • similar in Osceola, but in that county some precincts are repeated thrice; see Biden presidential rows for Marion Township, Precinct 1 for example
  • similar in Menominee, see Meyer Township, Precinct 1 for example
  • similar in Marquette, see West Branch Township, Precinct 1 for example
  • similar (2x rather than 3x repeat) in Gladwin, see Grim Township, Precinct 1 for example
  • similar in Leelanau, see Leland Township, Precinct 1 for example
  • similar in Mackinac, see St. Ignace Township, Precinct 1
  • similar in Chippewa, see Superior Township, Precinct 1
  • similar in Allegan, see City of Holland, Ward 5, Precinct 11 (Ottawa)

Copy link

mileswwatkins commented Mar 30, 2021

Looks like the Kent County file has candidate name and party swapped (ie, CSV header and rows do not line up):

Kent,"Ada Township, Precinct 1",President,,DEM,Joseph R. Biden,593,131,462
Kent,"Ada Township, Precinct 2",President,,DEM,Joseph R. Biden,1043,216,827
Kent,"Ada Township, Precinct 3",President,,DEM,Joseph R. Biden,512,100,412
Kent,"Ada Township, Precinct 4",President,,DEM,Joseph R. Biden,402,94,308

Copy link

saewitz commented Mar 30, 2021

@mileswwatkins fixed in #38

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet
None yet

No branches or pull requests

3 participants