fec_results 0.6 → 0.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. checksums.yaml +5 -13
  2. data/README.md +6 -6
  3. data/api/2000/congress/results.json +2668 -0
  4. data/api/2000/president/general_election_results.json +449 -0
  5. data/api/2000/president/popular_vote_summary.json +1 -0
  6. data/api/2000/president/primary_election_results.json +498 -0
  7. data/api/2000/president/primary_party_summary.json +1 -0
  8. data/api/2000/president/state_electoral_and_popular_vote_summary.json +1 -0
  9. data/api/2000/summary/chamber_votes_by_party.json +55 -0
  10. data/api/2000/summary/congressional_votes_by_election.json +55 -0
  11. data/api/2000/summary/general_election_votes.json +55 -0
  12. data/api/2000/summary/general_election_votes_by_party.json +55 -0
  13. data/api/2000/summary/party_labels.json +76 -0
  14. data/api/2002/congress/results.json +2401 -0
  15. data/api/2002/summary/chamber_votes_by_party.json +54 -0
  16. data/api/2002/summary/congressional_votes_by_election.json +54 -0
  17. data/api/2002/summary/general_election_votes.json +1 -0
  18. data/api/2002/summary/general_election_votes_by_party.json +1 -0
  19. data/api/2002/summary/party_labels.json +54 -0
  20. data/api/2004/congress/results.json +2309 -0
  21. data/api/2004/president/general_election_results.json +430 -0
  22. data/api/2004/president/popular_vote_summary.json +19 -0
  23. data/api/2004/president/primary_election_results.json +498 -0
  24. data/api/2004/president/primary_party_summary.json +7 -0
  25. data/api/2004/president/state_electoral_and_popular_vote_summary.json +56 -0
  26. data/api/2004/summary/chamber_votes_by_party.json +55 -0
  27. data/api/2004/summary/congressional_votes_by_election.json +55 -0
  28. data/api/2004/summary/general_election_votes.json +55 -0
  29. data/api/2004/summary/general_election_votes_by_party.json +55 -0
  30. data/api/2004/summary/party_labels.json +85 -0
  31. data/api/2006/congress/results.json +2377 -0
  32. data/api/2006/summary/chamber_votes_by_party.json +54 -0
  33. data/api/2006/summary/congressional_votes_by_election.json +54 -0
  34. data/api/2006/summary/general_election_votes.json +54 -0
  35. data/api/2006/summary/general_election_votes_by_party.json +54 -0
  36. data/api/2006/summary/party_labels.json +67 -0
  37. data/api/2008/congress/results.json +2401 -0
  38. data/api/2008/president/general_election_results.json +485 -0
  39. data/api/2008/president/popular_vote_summary.json +26 -0
  40. data/api/2008/president/primary_election_results.json +720 -0
  41. data/api/2008/president/primary_party_summary.json +11 -0
  42. data/api/2008/president/state_electoral_and_popular_vote_summary.json +51 -0
  43. data/api/2008/summary/chamber_votes_by_party.json +56 -0
  44. data/api/2008/summary/congressional_votes_by_election.json +56 -0
  45. data/api/2008/summary/general_election_votes.json +56 -0
  46. data/api/2008/summary/general_election_votes_by_party.json +56 -0
  47. data/api/2008/summary/party_labels.json +100 -0
  48. data/api/2010/congress/results.json +3300 -0
  49. data/api/2010/summary/chamber_votes_by_party.json +55 -0
  50. data/api/2010/summary/congressional_votes_by_election.json +55 -0
  51. data/api/2010/summary/general_election_votes.json +55 -0
  52. data/api/2010/summary/general_election_votes_by_party.json +55 -0
  53. data/api/2010/summary/party_labels.json +82 -0
  54. data/api/2012/congress/results.json +3081 -0
  55. data/api/2012/president/general_election_results.json +484 -0
  56. data/api/2012/president/popular_vote_summary.json +30 -0
  57. data/api/2012/president/primary_election_results.json +453 -0
  58. data/api/2012/president/primary_party_summary.json +9 -0
  59. data/api/2012/president/state_electoral_and_popular_vote_summary.json +51 -0
  60. data/api/2012/summary/chamber_votes_by_party.json +56 -0
  61. data/api/2012/summary/congressional_votes_by_election.json +56 -0
  62. data/api/2012/summary/general_election_votes.json +56 -0
  63. data/api/2012/summary/general_election_votes_by_party.json +56 -0
  64. data/api/2012/summary/party_labels.json +112 -0
  65. data/fec_results.gemspec +1 -0
  66. data/images/bg_hr.png +0 -0
  67. data/images/blacktocat.png +0 -0
  68. data/images/icon_download.png +0 -0
  69. data/images/sprite_download.png +0 -0
  70. data/index.html +159 -0
  71. data/javascripts/main.js +1 -0
  72. data/lib/fec_results.rb +3 -0
  73. data/lib/fec_results/congress.rb +56 -17
  74. data/lib/fec_results/president.rb +48 -48
  75. data/lib/fec_results/result.rb +2 -2
  76. data/lib/fec_results/summary.rb +120 -98
  77. data/lib/fec_results/version.rb +1 -1
  78. data/params.json +1 -0
  79. data/stylesheets/pygment_trac.css +70 -0
  80. data/stylesheets/stylesheet.css +419 -0
  81. metadata +100 -14
@@ -0,0 +1,9 @@
1
+ ["{\"party\":\"Republican Party (R)\",\"total_votes\":19530335}",
2
+ "{\"party\":\"Democratic Party (D)\",\"total_votes\":8571580}",
3
+ "{\"party\":\"American Independent (AIP)\",\"total_votes\":43692}",
4
+ "{\"party\":\"Green (GRE)\",\"total_votes\":19130}",
5
+ "{\"party\":\"Libertarian (LIB)\",\"total_votes\":14654}",
6
+ "{\"party\":\"Peace and Freedom (PAF)\",\"total_votes\":3662}",
7
+ "{\"party\":\"Green-Rainbow (GR)\",\"total_votes\":1518}",
8
+ "{\"party\":\"Constitution (CON)\",\"total_votes\":451}",
9
+ "{\"party\":\"D.C. Statehood Green (DCG)\",\"total_votes\":343}"]
@@ -0,0 +1,51 @@
1
+ ["{\"state\":\"AL\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":9,\"democratic_popular_votes\":795696,\"republican_popular_votes\":1255925,\"other_popular_votes\":22717,\"total_votes\":2074338}",
2
+ "{\"state\":\"AK\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":3,\"democratic_popular_votes\":122640,\"republican_popular_votes\":164676,\"other_popular_votes\":13179,\"total_votes\":300495}",
3
+ "{\"state\":\"AZ\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":11,\"democratic_popular_votes\":1025232,\"republican_popular_votes\":1233654,\"other_popular_votes\":40368,\"total_votes\":2299254}",
4
+ "{\"state\":\"AR\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":6,\"democratic_popular_votes\":394409,\"republican_popular_votes\":647744,\"other_popular_votes\":27315,\"total_votes\":1069468}",
5
+ "{\"state\":\"CA\",\"democratic_electoral_votes\":55,\"republican_electoral_votes\":0,\"democratic_popular_votes\":7854285,\"republican_popular_votes\":4839958,\"other_popular_votes\":344304,\"total_votes\":13038547}",
6
+ "{\"state\":\"CO\",\"democratic_electoral_votes\":9,\"republican_electoral_votes\":0,\"democratic_popular_votes\":1323102,\"republican_popular_votes\":1185243,\"other_popular_votes\":61177,\"total_votes\":2569522}",
7
+ "{\"state\":\"CT\",\"democratic_electoral_votes\":7,\"republican_electoral_votes\":0,\"democratic_popular_votes\":905083,\"republican_popular_votes\":634892,\"other_popular_votes\":18985,\"total_votes\":1558960}",
8
+ "{\"state\":\"DE\",\"democratic_electoral_votes\":3,\"republican_electoral_votes\":0,\"democratic_popular_votes\":242584,\"republican_popular_votes\":165484,\"other_popular_votes\":5853,\"total_votes\":413921}",
9
+ "{\"state\":\"DC\",\"democratic_electoral_votes\":3,\"republican_electoral_votes\":0,\"democratic_popular_votes\":267070,\"republican_popular_votes\":21381,\"other_popular_votes\":5313,\"total_votes\":293764}",
10
+ "{\"state\":\"FL\",\"democratic_electoral_votes\":29,\"republican_electoral_votes\":0,\"democratic_popular_votes\":4237756,\"republican_popular_votes\":4163447,\"other_popular_votes\":72976,\"total_votes\":8474179}",
11
+ "{\"state\":\"GA\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":16,\"democratic_popular_votes\":1773827,\"republican_popular_votes\":2078688,\"other_popular_votes\":47535,\"total_votes\":3900050}",
12
+ "{\"state\":\"HI\",\"democratic_electoral_votes\":4,\"republican_electoral_votes\":0,\"democratic_popular_votes\":306658,\"republican_popular_votes\":121015,\"other_popular_votes\":7024,\"total_votes\":434697}",
13
+ "{\"state\":\"ID\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":4,\"democratic_popular_votes\":212787,\"republican_popular_votes\":420911,\"other_popular_votes\":18576,\"total_votes\":652274}",
14
+ "{\"state\":\"IL\",\"democratic_electoral_votes\":20,\"republican_electoral_votes\":0,\"democratic_popular_votes\":3019512,\"republican_popular_votes\":2135216,\"other_popular_votes\":87286,\"total_votes\":5242014}",
15
+ "{\"state\":\"IN\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":11,\"democratic_popular_votes\":1152887,\"republican_popular_votes\":1420543,\"other_popular_votes\":51104,\"total_votes\":2624534}",
16
+ "{\"state\":\"IA\",\"democratic_electoral_votes\":6,\"republican_electoral_votes\":0,\"democratic_popular_votes\":822544,\"republican_popular_votes\":730617,\"other_popular_votes\":29019,\"total_votes\":1582180}",
17
+ "{\"state\":\"KS\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":6,\"democratic_popular_votes\":440726,\"republican_popular_votes\":692634,\"other_popular_votes\":26611,\"total_votes\":1159971}",
18
+ "{\"state\":\"KY\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":8,\"democratic_popular_votes\":679370,\"republican_popular_votes\":1087190,\"other_popular_votes\":30652,\"total_votes\":1797212}",
19
+ "{\"state\":\"LA\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":8,\"democratic_popular_votes\":809141,\"republican_popular_votes\":1152262,\"other_popular_votes\":32662,\"total_votes\":1994065}",
20
+ "{\"state\":\"ME\",\"democratic_electoral_votes\":4,\"republican_electoral_votes\":0,\"democratic_popular_votes\":401306,\"republican_popular_votes\":292276,\"other_popular_votes\":19598,\"total_votes\":713180}",
21
+ "{\"state\":\"MD\",\"democratic_electoral_votes\":10,\"republican_electoral_votes\":0,\"democratic_popular_votes\":1677844,\"republican_popular_votes\":971869,\"other_popular_votes\":57614,\"total_votes\":2707327}",
22
+ "{\"state\":\"MA\",\"democratic_electoral_votes\":11,\"republican_electoral_votes\":0,\"democratic_popular_votes\":1921290,\"republican_popular_votes\":1188314,\"other_popular_votes\":58163,\"total_votes\":3167767}",
23
+ "{\"state\":\"MI\",\"democratic_electoral_votes\":16,\"republican_electoral_votes\":0,\"democratic_popular_votes\":2564569,\"republican_popular_votes\":2115256,\"other_popular_votes\":51136,\"total_votes\":4730961}",
24
+ "{\"state\":\"MN\",\"democratic_electoral_votes\":10,\"republican_electoral_votes\":0,\"democratic_popular_votes\":1546167,\"republican_popular_votes\":1320225,\"other_popular_votes\":70169,\"total_votes\":2936561}",
25
+ "{\"state\":\"MS\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":6,\"democratic_popular_votes\":562949,\"republican_popular_votes\":710746,\"other_popular_votes\":11889,\"total_votes\":1285584}",
26
+ "{\"state\":\"MO\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":10,\"democratic_popular_votes\":1223796,\"republican_popular_votes\":1482440,\"other_popular_votes\":51087,\"total_votes\":2757323}",
27
+ "{\"state\":\"MT\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":3,\"democratic_popular_votes\":201839,\"republican_popular_votes\":267928,\"other_popular_votes\":14281,\"total_votes\":484048}",
28
+ "{\"state\":\"NE\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":5,\"democratic_popular_votes\":302081,\"republican_popular_votes\":475064,\"other_popular_votes\":17234,\"total_votes\":794379}",
29
+ "{\"state\":\"NV\",\"democratic_electoral_votes\":6,\"republican_electoral_votes\":0,\"democratic_popular_votes\":531373,\"republican_popular_votes\":463567,\"other_popular_votes\":19978,\"total_votes\":1014918}",
30
+ "{\"state\":\"NH\",\"democratic_electoral_votes\":4,\"republican_electoral_votes\":0,\"democratic_popular_votes\":369561,\"republican_popular_votes\":329918,\"other_popular_votes\":11493,\"total_votes\":710972}",
31
+ "{\"state\":\"NJ\",\"democratic_electoral_votes\":14,\"republican_electoral_votes\":0,\"democratic_popular_votes\":2125101,\"republican_popular_votes\":1477568,\"other_popular_votes\":37623,\"total_votes\":3640292}",
32
+ "{\"state\":\"NM\",\"democratic_electoral_votes\":5,\"republican_electoral_votes\":0,\"democratic_popular_votes\":415335,\"republican_popular_votes\":335788,\"other_popular_votes\":32635,\"total_votes\":783758}",
33
+ "{\"state\":\"NY\",\"democratic_electoral_votes\":29,\"republican_electoral_votes\":0,\"democratic_popular_votes\":4485741,\"republican_popular_votes\":2490431,\"other_popular_votes\":104987,\"total_votes\":7081159}",
34
+ "{\"state\":\"NC\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":15,\"democratic_popular_votes\":2178391,\"republican_popular_votes\":2270395,\"other_popular_votes\":56586,\"total_votes\":4505372}",
35
+ "{\"state\":\"ND\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":3,\"democratic_popular_votes\":124827,\"republican_popular_votes\":188163,\"other_popular_votes\":9637,\"total_votes\":322627}",
36
+ "{\"state\":\"OH\",\"democratic_electoral_votes\":18,\"republican_electoral_votes\":0,\"democratic_popular_votes\":2827710,\"republican_popular_votes\":2661433,\"other_popular_votes\":91697,\"total_votes\":5580840}",
37
+ "{\"state\":\"OK\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":7,\"democratic_popular_votes\":443547,\"republican_popular_votes\":891325,\"other_popular_votes\":0,\"total_votes\":1334872}",
38
+ "{\"state\":\"OR\",\"democratic_electoral_votes\":7,\"republican_electoral_votes\":0,\"democratic_popular_votes\":970488,\"republican_popular_votes\":754175,\"other_popular_votes\":64607,\"total_votes\":1789270}",
39
+ "{\"state\":\"PA\",\"democratic_electoral_votes\":20,\"republican_electoral_votes\":0,\"democratic_popular_votes\":2990274,\"republican_popular_votes\":2680434,\"other_popular_votes\":82962,\"total_votes\":5753670}",
40
+ "{\"state\":\"RI\",\"democratic_electoral_votes\":4,\"republican_electoral_votes\":0,\"democratic_popular_votes\":279677,\"republican_popular_votes\":157204,\"other_popular_votes\":9168,\"total_votes\":446049}",
41
+ "{\"state\":\"SC\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":9,\"democratic_popular_votes\":865941,\"republican_popular_votes\":1071645,\"other_popular_votes\":26532,\"total_votes\":1964118}",
42
+ "{\"state\":\"SD\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":3,\"democratic_popular_votes\":145039,\"republican_popular_votes\":210610,\"other_popular_votes\":8166,\"total_votes\":363815}",
43
+ "{\"state\":\"TN\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":11,\"democratic_popular_votes\":960709,\"republican_popular_votes\":1462330,\"other_popular_votes\":35538,\"total_votes\":2458577}",
44
+ "{\"state\":\"TX\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":38,\"democratic_popular_votes\":3308124,\"republican_popular_votes\":4569843,\"other_popular_votes\":115884,\"total_votes\":7993851}",
45
+ "{\"state\":\"UT\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":6,\"democratic_popular_votes\":251813,\"republican_popular_votes\":740600,\"other_popular_votes\":25027,\"total_votes\":1017440}",
46
+ "{\"state\":\"VT\",\"democratic_electoral_votes\":3,\"republican_electoral_votes\":0,\"democratic_popular_votes\":199239,\"republican_popular_votes\":92698,\"other_popular_votes\":7353,\"total_votes\":299290}",
47
+ "{\"state\":\"VA\",\"democratic_electoral_votes\":13,\"republican_electoral_votes\":0,\"democratic_popular_votes\":1971820,\"republican_popular_votes\":1822522,\"other_popular_votes\":60147,\"total_votes\":3854489}",
48
+ "{\"state\":\"WA\",\"democratic_electoral_votes\":12,\"republican_electoral_votes\":0,\"democratic_popular_votes\":1755396,\"republican_popular_votes\":1290670,\"other_popular_votes\":79450,\"total_votes\":3125516}",
49
+ "{\"state\":\"WV\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":5,\"democratic_popular_votes\":238269,\"republican_popular_votes\":417655,\"other_popular_votes\":14514,\"total_votes\":670438}",
50
+ "{\"state\":\"WI\",\"democratic_electoral_votes\":10,\"republican_electoral_votes\":0,\"democratic_popular_votes\":1620985,\"republican_popular_votes\":1407966,\"other_popular_votes\":39483,\"total_votes\":3068434}",
51
+ "{\"state\":\"WY\",\"democratic_electoral_votes\":0,\"republican_electoral_votes\":3,\"democratic_popular_votes\":69286,\"republican_popular_votes\":170962,\"other_popular_votes\":8813,\"total_votes\":249061}"]
@@ -0,0 +1,56 @@
1
+ ["{\"state_abbrev\":\"AL\",\"democratic_primary_votes\":29614,\"republican_primary_votes\":300101,\"other_primary_votes\":5741,\"democratic_general_votes\":693498,\"republican_general_votes\":1233624,\"other_general_votes\":6508}",
2
+ "{\"state_abbrev\":\"AK\",\"democratic_primary_votes\":32448,\"republican_primary_votes\":74809,\"other_primary_votes\":null,\"democratic_general_votes\":82927,\"republican_general_votes\":185296,\"other_general_votes\":21581}",
3
+ "{\"state_abbrev\":\"AS\",\"democratic_primary_votes\":null,\"republican_primary_votes\":null,\"other_primary_votes\":null,\"democratic_general_votes\":7659,\"republican_general_votes\":null,\"other_general_votes\":5417}",
4
+ "{\"state_abbrev\":\"AZ\",\"democratic_primary_votes\":307282,\"republican_primary_votes\":487978,\"other_primary_votes\":988,\"democratic_general_votes\":946994,\"republican_general_votes\":1131663,\"other_general_votes\":94660}",
5
+ "{\"state_abbrev\":\"AR\",\"democratic_primary_votes\":156759,\"republican_primary_votes\":36312,\"other_primary_votes\":null,\"democratic_general_votes\":304770,\"republican_general_votes\":637591,\"other_general_votes\":95693}",
6
+ "{\"state_abbrev\":\"CA\",\"democratic_primary_votes\":2643313,\"republican_primary_votes\":2080896,\"other_primary_votes\":233659,\"democratic_general_votes\":7392703,\"republican_general_votes\":4530012,\"other_general_votes\":281642}",
7
+ "{\"state_abbrev\":\"CO\",\"democratic_primary_votes\":180735,\"republican_primary_votes\":294734,\"other_primary_votes\":600,\"democratic_general_votes\":1080454,\"republican_general_votes\":1143796,\"other_general_votes\":226589}",
8
+ "{\"state_abbrev\":\"CT\",\"democratic_primary_votes\":28515,\"republican_primary_votes\":51008,\"other_primary_votes\":null,\"democratic_general_votes\":884398,\"republican_general_votes\":490580,\"other_general_votes\":91533}",
9
+ "{\"state_abbrev\":\"DE\",\"democratic_primary_votes\":null,\"republican_primary_votes\":22906,\"other_primary_votes\":null,\"democratic_general_votes\":249933,\"republican_general_votes\":129757,\"other_general_votes\":8369}",
10
+ "{\"state_abbrev\":\"DC\",\"democratic_primary_votes\":54355,\"republican_primary_votes\":769,\"other_primary_votes\":393,\"democratic_general_votes\":246664,\"republican_general_votes\":null,\"other_general_votes\":31899}",
11
+ "{\"state_abbrev\":\"FL\",\"democratic_primary_votes\":298223,\"republican_primary_votes\":552669,\"other_primary_votes\":null,\"democratic_general_votes\":3392402,\"republican_general_votes\":3826522,\"other_general_votes\":294610}",
12
+ "{\"state_abbrev\":\"GA\",\"democratic_primary_votes\":415556,\"republican_primary_votes\":961430,\"other_primary_votes\":null,\"democratic_general_votes\":1448869,\"republican_general_votes\":2104098,\"other_general_votes\":620}",
13
+ "{\"state_abbrev\":\"GU\",\"democratic_primary_votes\":10765,\"republican_primary_votes\":5391,\"other_primary_votes\":89,\"democratic_general_votes\":19765,\"republican_general_votes\":12995,\"other_general_votes\":246}",
14
+ "{\"state_abbrev\":\"HI\",\"democratic_primary_votes\":223664,\"republican_primary_votes\":42058,\"other_primary_votes\":null,\"democratic_general_votes\":285008,\"republican_general_votes\":137531,\"other_general_votes\":null}",
15
+ "{\"state_abbrev\":\"ID\",\"democratic_primary_votes\":22610,\"republican_primary_votes\":144959,\"other_primary_votes\":null,\"democratic_general_votes\":208297,\"republican_general_votes\":406814,\"other_general_votes\":20107}",
16
+ "{\"state_abbrev\":\"IL\",\"democratic_primary_votes\":642996,\"republican_primary_votes\":758358,\"other_primary_votes\":null,\"democratic_general_votes\":2743702,\"republican_general_votes\":2207818,\"other_general_votes\":106613}",
17
+ "{\"state_abbrev\":\"IN\",\"democratic_primary_votes\":233573,\"republican_primary_votes\":586009,\"other_primary_votes\":null,\"democratic_general_votes\":1142554,\"republican_general_votes\":1351760,\"other_general_votes\":59432}",
18
+ "{\"state_abbrev\":\"IA\",\"democratic_primary_votes\":52803,\"republican_primary_votes\":118980,\"other_primary_votes\":null,\"democratic_general_votes\":772387,\"republican_general_votes\":726505,\"other_general_votes\":37957}",
19
+ "{\"state_abbrev\":\"KS\",\"democratic_primary_votes\":45569,\"republican_primary_votes\":254106,\"other_primary_votes\":null,\"democratic_general_votes\":195505,\"republican_general_votes\":740981,\"other_general_votes\":121253}",
20
+ "{\"state_abbrev\":\"KY\",\"democratic_primary_votes\":131086,\"republican_primary_votes\":68200,\"other_primary_votes\":null,\"democratic_general_votes\":791342,\"republican_general_votes\":1201674,\"other_general_votes\":43038}",
21
+ "{\"state_abbrev\":\"LA\",\"democratic_primary_votes\":null,\"republican_primary_votes\":null,\"other_primary_votes\":null,\"democratic_general_votes\":359190,\"republican_general_votes\":1239614,\"other_general_votes\":203400}",
22
+ "{\"state_abbrev\":\"ME\",\"democratic_primary_votes\":53860,\"republican_primary_votes\":60086,\"other_primary_votes\":null,\"democratic_general_votes\":427819,\"republican_general_votes\":265982,\"other_general_votes\":null}",
23
+ "{\"state_abbrev\":\"MD\",\"democratic_primary_votes\":306054,\"republican_primary_votes\":208925,\"other_primary_votes\":null,\"democratic_general_votes\":1626872,\"republican_general_votes\":858406,\"other_general_votes\":100236}",
24
+ "{\"state_abbrev\":\"MA\",\"democratic_primary_votes\":336293,\"republican_primary_votes\":103897,\"other_primary_votes\":259,\"democratic_general_votes\":2080594,\"republican_general_votes\":697637,\"other_general_votes\":113203}",
25
+ "{\"state_abbrev\":\"MI\",\"democratic_primary_votes\":541365,\"republican_primary_votes\":708272,\"other_primary_votes\":null,\"democratic_general_votes\":2487243,\"republican_general_votes\":2238540,\"other_general_votes\":177986}",
26
+ "{\"state_abbrev\":\"MN\",\"democratic_primary_votes\":168705,\"republican_primary_votes\":117799,\"other_primary_votes\":545,\"democratic_general_votes\":1560984,\"republican_general_votes\":1210409,\"other_general_votes\":41990}",
27
+ "{\"state_abbrev\":\"MS\",\"democratic_primary_votes\":93265,\"republican_primary_votes\":270170,\"other_primary_votes\":null,\"democratic_general_votes\":411398,\"republican_general_votes\":703635,\"other_general_votes\":93142}",
28
+ "{\"state_abbrev\":\"MO\",\"democratic_primary_votes\":283688,\"republican_primary_votes\":577131,\"other_primary_votes\":2664,\"democratic_general_votes\":1119554,\"republican_general_votes\":1463586,\"other_general_votes\":92760}",
29
+ "{\"state_abbrev\":\"MT\",\"democratic_primary_votes\":80824,\"republican_primary_votes\":116275,\"other_primary_votes\":null,\"democratic_general_votes\":204939,\"republican_general_votes\":255468,\"other_general_votes\":19333}",
30
+ "{\"state_abbrev\":\"NE\",\"democratic_primary_votes\":68593,\"republican_primary_votes\":183938,\"other_primary_votes\":5923,\"democratic_general_votes\":276239,\"republican_general_votes\":496276,\"other_general_votes\":null}",
31
+ "{\"state_abbrev\":\"NV\",\"democratic_primary_votes\":37669,\"republican_primary_votes\":57158,\"other_primary_votes\":null,\"democratic_general_votes\":453310,\"republican_general_votes\":457239,\"other_general_votes\":63193}",
32
+ "{\"state_abbrev\":\"NH\",\"democratic_primary_votes\":79945,\"republican_primary_votes\":104495,\"other_primary_votes\":null,\"democratic_general_votes\":340925,\"republican_general_votes\":311636,\"other_general_votes\":29855}",
33
+ "{\"state_abbrev\":\"NJ\",\"democratic_primary_votes\":346914,\"republican_primary_votes\":214910,\"other_primary_votes\":null,\"democratic_general_votes\":1960820,\"republican_general_votes\":1430386,\"other_general_votes\":61661}",
34
+ "{\"state_abbrev\":\"NM\",\"democratic_primary_votes\":125791,\"republican_primary_votes\":80504,\"other_primary_votes\":null,\"democratic_general_votes\":422189,\"republican_general_votes\":323269,\"other_general_votes\":632}",
35
+ "{\"state_abbrev\":\"NY\",\"democratic_primary_votes\":225233,\"republican_primary_votes\":74250,\"other_primary_votes\":447,\"democratic_general_votes\":3904513,\"republican_general_votes\":1949229,\"other_general_votes\":615983}",
36
+ "{\"state_abbrev\":\"NC\",\"democratic_primary_votes\":538280,\"republican_primary_votes\":815717,\"other_primary_votes\":null,\"democratic_general_votes\":2218357,\"republican_general_votes\":2137167,\"other_general_votes\":28588}",
37
+ "{\"state_abbrev\":\"ND\",\"democratic_primary_votes\":51824,\"republican_primary_votes\":99933,\"other_primary_votes\":701,\"democratic_general_votes\":131869,\"republican_general_votes\":173433,\"other_general_votes\":10769}",
38
+ "{\"state_abbrev\":\"MP\",\"democratic_primary_votes\":null,\"republican_primary_votes\":null,\"other_primary_votes\":null,\"democratic_general_votes\":null,\"republican_general_votes\":2503,\"other_general_votes\":9829}",
39
+ "{\"state_abbrev\":\"OH\",\"democratic_primary_votes\":531539,\"republican_primary_votes\":1004020,\"other_primary_votes\":2229,\"democratic_general_votes\":2412451,\"republican_general_votes\":2620251,\"other_general_votes\":107619}",
40
+ "{\"state_abbrev\":\"OK\",\"democratic_primary_votes\":151088,\"republican_primary_votes\":165640,\"other_primary_votes\":null,\"democratic_general_votes\":410324,\"republican_general_votes\":856872,\"other_general_votes\":58739}",
41
+ "{\"state_abbrev\":\"OR\",\"democratic_primary_votes\":314282,\"republican_primary_votes\":236747,\"other_primary_votes\":null,\"democratic_general_votes\":949660,\"republican_general_votes\":687839,\"other_general_votes\":70669}",
42
+ "{\"state_abbrev\":\"PA\",\"democratic_primary_votes\":633717,\"republican_primary_votes\":709982,\"other_primary_votes\":null,\"democratic_general_votes\":2793538,\"republican_general_votes\":2710070,\"other_general_votes\":56987}",
43
+ "{\"state_abbrev\":\"PR\",\"democratic_primary_votes\":null,\"republican_primary_votes\":null,\"other_primary_votes\":null,\"democratic_general_votes\":null,\"republican_general_votes\":null,\"other_general_votes\":1856345}",
44
+ "{\"state_abbrev\":\"RI\",\"democratic_primary_votes\":78515,\"republican_primary_votes\":8050,\"other_primary_votes\":null,\"democratic_general_votes\":232679,\"republican_general_votes\":161926,\"other_general_votes\":33170}",
45
+ "{\"state_abbrev\":\"SC\",\"democratic_primary_votes\":70781,\"republican_primary_votes\":96104,\"other_primary_votes\":null,\"democratic_general_votes\":714191,\"republican_general_votes\":1026129,\"other_general_votes\":62414}",
46
+ "{\"state_abbrev\":\"SD\",\"democratic_primary_votes\":30253,\"republican_primary_votes\":null,\"other_primary_votes\":null,\"democratic_general_votes\":153789,\"republican_general_votes\":207640,\"other_general_votes\":null}",
47
+ "{\"state_abbrev\":\"TN\",\"democratic_primary_votes\":163367,\"republican_primary_votes\":435726,\"other_primary_votes\":null,\"democratic_general_votes\":796513,\"republican_general_votes\":1369562,\"other_general_votes\":117652}",
48
+ "{\"state_abbrev\":\"TX\",\"democratic_primary_votes\":630618,\"republican_primary_votes\":1440292,\"other_primary_votes\":null,\"democratic_general_votes\":2949900,\"republican_general_votes\":4429270,\"other_general_votes\":285038}",
49
+ "{\"state_abbrev\":\"UT\",\"democratic_primary_votes\":5825,\"republican_primary_votes\":null,\"other_primary_votes\":null,\"democratic_general_votes\":324309,\"republican_general_votes\":647873,\"other_general_votes\":26715}",
50
+ "{\"state_abbrev\":\"VT\",\"democratic_primary_votes\":37222,\"republican_primary_votes\":7957,\"other_primary_votes\":379,\"democratic_general_votes\":208600,\"republican_general_votes\":67543,\"other_general_votes\":13788}",
51
+ "{\"state_abbrev\":\"VI\",\"democratic_primary_votes\":7151,\"republican_primary_votes\":203,\"other_primary_votes\":null,\"democratic_general_votes\":11512,\"republican_general_votes\":2131,\"other_general_votes\":5527}",
52
+ "{\"state_abbrev\":\"VA\",\"democratic_primary_votes\":37859,\"republican_primary_votes\":128262,\"other_primary_votes\":null,\"democratic_general_votes\":1806025,\"republican_general_votes\":1876761,\"other_general_votes\":57669}",
53
+ "{\"state_abbrev\":\"WA\",\"democratic_primary_votes\":798515,\"republican_primary_votes\":685141,\"other_primary_votes\":52806,\"democratic_general_votes\":1852870,\"republican_general_votes\":1511131,\"other_general_votes\":null}",
54
+ "{\"state_abbrev\":\"WV\",\"democratic_primary_votes\":162693,\"republican_primary_votes\":101455,\"other_primary_votes\":null,\"democratic_general_votes\":257101,\"republican_general_votes\":384253,\"other_general_votes\":null}",
55
+ "{\"state_abbrev\":\"WI\",\"democratic_primary_votes\":178726,\"republican_primary_votes\":445465,\"other_primary_votes\":100,\"democratic_general_votes\":1445015,\"republican_general_votes\":1401995,\"other_general_votes\":19040}",
56
+ "{\"state_abbrev\":\"WY\",\"democratic_primary_votes\":16436,\"republican_primary_votes\":74546,\"other_primary_votes\":null,\"democratic_general_votes\":57573,\"republican_general_votes\":166452,\"other_general_votes\":17596}"]
@@ -0,0 +1,56 @@
1
+ ["{\"state_abbrev\":\"AL\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":329715,\"house_general_votes\":1933630}",
2
+ "{\"state_abbrev\":\"AK\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":112998,\"house_general_votes\":289804}",
3
+ "{\"state_abbrev\":\"AS\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":null,\"house_general_votes\":13076}",
4
+ "{\"state_abbrev\":\"AZ\",\"senate_primary_votes\":806497,\"senate_general_votes\":2243422,\"house_primary_votes\":796248,\"house_general_votes\":2173317}",
5
+ "{\"state_abbrev\":\"AR\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":193071,\"house_general_votes\":1038054}",
6
+ "{\"state_abbrev\":\"CA\",\"senate_primary_votes\":4854801,\"senate_general_votes\":12578511,\"house_primary_votes\":4957868,\"house_general_votes\":12204357}",
7
+ "{\"state_abbrev\":\"CO\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":476069,\"house_general_votes\":2450839}",
8
+ "{\"state_abbrev\":\"CT\",\"senate_primary_votes\":254981,\"senate_general_votes\":1511764,\"house_primary_votes\":79523,\"house_general_votes\":1466511}",
9
+ "{\"state_abbrev\":\"DE\",\"senate_primary_votes\":49615,\"senate_general_votes\":399607,\"house_primary_votes\":22906,\"house_general_votes\":388059}",
10
+ "{\"state_abbrev\":\"DC\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":55517,\"house_general_votes\":278563}",
11
+ "{\"state_abbrev\":\"FL\",\"senate_primary_votes\":2002760,\"senate_general_votes\":8189946,\"house_primary_votes\":850892,\"house_general_votes\":7513534}",
12
+ "{\"state_abbrev\":\"GA\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":1376986,\"house_general_votes\":3553587}",
13
+ "{\"state_abbrev\":\"GU\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":16245,\"house_general_votes\":33006}",
14
+ "{\"state_abbrev\":\"HI\",\"senate_primary_votes\":282761,\"senate_general_votes\":430483,\"house_primary_votes\":265722,\"house_general_votes\":422539}",
15
+ "{\"state_abbrev\":\"ID\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":167569,\"house_general_votes\":635218}",
16
+ "{\"state_abbrev\":\"IL\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":1401354,\"house_general_votes\":5058133}",
17
+ "{\"state_abbrev\":\"IN\",\"senate_primary_votes\":869321,\"senate_general_votes\":2560102,\"house_primary_votes\":819582,\"house_general_votes\":2553746}",
18
+ "{\"state_abbrev\":\"IA\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":171783,\"house_general_votes\":1536849}",
19
+ "{\"state_abbrev\":\"KS\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":299675,\"house_general_votes\":1057739}",
20
+ "{\"state_abbrev\":\"KY\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":199286,\"house_general_votes\":2036054}",
21
+ "{\"state_abbrev\":\"LA\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":null,\"house_general_votes\":1802204}",
22
+ "{\"state_abbrev\":\"ME\",\"senate_primary_votes\":122287,\"senate_general_votes\":700599,\"house_primary_votes\":113946,\"house_general_votes\":693801}",
23
+ "{\"state_abbrev\":\"MD\",\"senate_primary_votes\":528486,\"senate_general_votes\":2633215,\"house_primary_votes\":514979,\"house_general_votes\":2585514}",
24
+ "{\"state_abbrev\":\"MA\",\"senate_primary_votes\":451543,\"senate_general_votes\":3156553,\"house_primary_votes\":440449,\"house_general_votes\":2891434}",
25
+ "{\"state_abbrev\":\"MI\",\"senate_primary_votes\":1290638,\"senate_general_votes\":4652918,\"house_primary_votes\":1249637,\"house_general_votes\":4903769}",
26
+ "{\"state_abbrev\":\"MN\",\"senate_primary_votes\":331521,\"senate_general_votes\":2843207,\"house_primary_votes\":287049,\"house_general_votes\":2813383}",
27
+ "{\"state_abbrev\":\"MS\",\"senate_primary_votes\":372487,\"senate_general_votes\":1241568,\"house_primary_votes\":363435,\"house_general_votes\":1208175}",
28
+ "{\"state_abbrev\":\"MO\",\"senate_primary_votes\":895211,\"senate_general_votes\":2725793,\"house_primary_votes\":863483,\"house_general_votes\":2675900}",
29
+ "{\"state_abbrev\":\"MT\",\"senate_primary_votes\":227431,\"senate_general_votes\":486066,\"house_primary_votes\":197099,\"house_general_votes\":479740}",
30
+ "{\"state_abbrev\":\"NE\",\"senate_primary_votes\":277268,\"senate_general_votes\":788572,\"house_primary_votes\":258454,\"house_general_votes\":772515}",
31
+ "{\"state_abbrev\":\"NV\",\"senate_primary_votes\":181240,\"senate_general_votes\":997805,\"house_primary_votes\":94827,\"house_general_votes\":973742}",
32
+ "{\"state_abbrev\":\"NH\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":184440,\"house_general_votes\":682416}",
33
+ "{\"state_abbrev\":\"NJ\",\"senate_primary_votes\":485240,\"senate_general_votes\":3374668,\"house_primary_votes\":561824,\"house_general_votes\":3452867}",
34
+ "{\"state_abbrev\":\"NM\",\"senate_primary_votes\":232405,\"senate_general_votes\":775793,\"house_primary_votes\":206295,\"house_general_votes\":746090}",
35
+ "{\"state_abbrev\":\"NY\",\"senate_primary_votes\":151122,\"senate_general_votes\":6679678,\"house_primary_votes\":299930,\"house_general_votes\":6469725}",
36
+ "{\"state_abbrev\":\"NC\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":1353997,\"house_general_votes\":4384112}",
37
+ "{\"state_abbrev\":\"ND\",\"senate_primary_votes\":159654,\"senate_general_votes\":320851,\"house_primary_votes\":152458,\"house_general_votes\":316071}",
38
+ "{\"state_abbrev\":\"MP\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":null,\"house_general_votes\":12332}",
39
+ "{\"state_abbrev\":\"OH\",\"senate_primary_votes\":1454261,\"senate_general_votes\":5449018,\"house_primary_votes\":1537788,\"house_general_votes\":5140321}",
40
+ "{\"state_abbrev\":\"OK\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":316728,\"house_general_votes\":1325935}",
41
+ "{\"state_abbrev\":\"OR\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":551029,\"house_general_votes\":1708168}",
42
+ "{\"state_abbrev\":\"PA\",\"senate_primary_votes\":1462170,\"senate_general_votes\":5629491,\"house_primary_votes\":1343699,\"house_general_votes\":5560595}",
43
+ "{\"state_abbrev\":\"PR\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":null,\"house_general_votes\":1856345}",
44
+ "{\"state_abbrev\":\"RI\",\"senate_primary_votes\":67688,\"senate_general_votes\":418189,\"house_primary_votes\":86565,\"house_general_votes\":427775}",
45
+ "{\"state_abbrev\":\"SC\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":166885,\"house_general_votes\":1802734}",
46
+ "{\"state_abbrev\":\"SD\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":30253,\"house_general_votes\":361429}",
47
+ "{\"state_abbrev\":\"TN\",\"senate_primary_votes\":618070,\"senate_general_votes\":2321477,\"house_primary_votes\":599093,\"house_general_votes\":2283727}",
48
+ "{\"state_abbrev\":\"TX\",\"senate_primary_votes\":3252378,\"senate_general_votes\":7864822,\"house_primary_votes\":2070910,\"house_general_votes\":7664208}",
49
+ "{\"state_abbrev\":\"UT\",\"senate_primary_votes\":241274,\"senate_general_votes\":1006901,\"house_primary_votes\":5825,\"house_general_votes\":998897}",
50
+ "{\"state_abbrev\":\"VT\",\"senate_primary_votes\":46585,\"senate_general_votes\":292762,\"house_primary_votes\":45558,\"house_general_votes\":289931}",
51
+ "{\"state_abbrev\":\"VI\",\"senate_primary_votes\":null,\"senate_general_votes\":null,\"house_primary_votes\":7354,\"house_general_votes\":19170}",
52
+ "{\"state_abbrev\":\"VA\",\"senate_primary_votes\":256480,\"senate_general_votes\":3802196,\"house_primary_votes\":166121,\"house_general_votes\":3740455}",
53
+ "{\"state_abbrev\":\"WA\",\"senate_primary_votes\":1387059,\"senate_general_votes\":3069417,\"house_primary_votes\":1536462,\"house_general_votes\":3364001}",
54
+ "{\"state_abbrev\":\"WV\",\"senate_primary_votes\":293519,\"senate_general_votes\":660202,\"house_primary_votes\":264148,\"house_general_votes\":641354}",
55
+ "{\"state_abbrev\":\"WI\",\"senate_primary_votes\":768302,\"senate_general_votes\":3009411,\"house_primary_votes\":624291,\"house_general_votes\":2866050}",
56
+ "{\"state_abbrev\":\"WY\",\"senate_primary_votes\":98820,\"senate_general_votes\":244862,\"house_primary_votes\":90982,\"house_general_votes\":241621}"]
@@ -0,0 +1,56 @@
1
+ ["{\"state\":\"AL\",\"presidential_votes\":2074338,\"senate_votes\":null,\"house_votes\":1933630}",
2
+ "{\"state\":\"AK\",\"presidential_votes\":300495,\"senate_votes\":null,\"house_votes\":289804}",
3
+ "{\"state\":\"AS\",\"presidential_votes\":null,\"senate_votes\":null,\"house_votes\":13076}",
4
+ "{\"state\":\"AZ\",\"presidential_votes\":2299254,\"senate_votes\":2243422,\"house_votes\":2173317}",
5
+ "{\"state\":\"AR\",\"presidential_votes\":1069468,\"senate_votes\":null,\"house_votes\":1038054}",
6
+ "{\"state\":\"CA\",\"presidential_votes\":13038547,\"senate_votes\":12578511,\"house_votes\":12204357}",
7
+ "{\"state\":\"CO\",\"presidential_votes\":2569522,\"senate_votes\":null,\"house_votes\":2450839}",
8
+ "{\"state\":\"CT\",\"presidential_votes\":1558960,\"senate_votes\":1511764,\"house_votes\":1466511}",
9
+ "{\"state\":\"DE\",\"presidential_votes\":413921,\"senate_votes\":399607,\"house_votes\":388059}",
10
+ "{\"state\":\"DC\",\"presidential_votes\":293764,\"senate_votes\":null,\"house_votes\":278563}",
11
+ "{\"state\":\"FL\",\"presidential_votes\":8474179,\"senate_votes\":8189946,\"house_votes\":7513534}",
12
+ "{\"state\":\"GA\",\"presidential_votes\":3900050,\"senate_votes\":null,\"house_votes\":3553587}",
13
+ "{\"state\":\"GU\",\"presidential_votes\":null,\"senate_votes\":null,\"house_votes\":33006}",
14
+ "{\"state\":\"HI\",\"presidential_votes\":434697,\"senate_votes\":430483,\"house_votes\":422539}",
15
+ "{\"state\":\"ID\",\"presidential_votes\":652274,\"senate_votes\":null,\"house_votes\":635218}",
16
+ "{\"state\":\"IL\",\"presidential_votes\":5242014,\"senate_votes\":null,\"house_votes\":5058133}",
17
+ "{\"state\":\"IN\",\"presidential_votes\":2624534,\"senate_votes\":2560102,\"house_votes\":2553746}",
18
+ "{\"state\":\"IA\",\"presidential_votes\":1582180,\"senate_votes\":null,\"house_votes\":1536849}",
19
+ "{\"state\":\"KS\",\"presidential_votes\":1159971,\"senate_votes\":null,\"house_votes\":1057739}",
20
+ "{\"state\":\"KY\",\"presidential_votes\":1797212,\"senate_votes\":null,\"house_votes\":2036054}",
21
+ "{\"state\":\"LA\",\"presidential_votes\":1994065,\"senate_votes\":null,\"house_votes\":1802204}",
22
+ "{\"state\":\"ME\",\"presidential_votes\":713180,\"senate_votes\":700599,\"house_votes\":693801}",
23
+ "{\"state\":\"MD\",\"presidential_votes\":2707327,\"senate_votes\":2633215,\"house_votes\":2585514}",
24
+ "{\"state\":\"MA\",\"presidential_votes\":3167767,\"senate_votes\":3156553,\"house_votes\":2891434}",
25
+ "{\"state\":\"MI\",\"presidential_votes\":4730961,\"senate_votes\":4652918,\"house_votes\":4903769}",
26
+ "{\"state\":\"MN\",\"presidential_votes\":2936561,\"senate_votes\":2843207,\"house_votes\":2813383}",
27
+ "{\"state\":\"MS\",\"presidential_votes\":1285584,\"senate_votes\":1241568,\"house_votes\":1208175}",
28
+ "{\"state\":\"MO\",\"presidential_votes\":2757323,\"senate_votes\":2725793,\"house_votes\":2675900}",
29
+ "{\"state\":\"MT\",\"presidential_votes\":484048,\"senate_votes\":486066,\"house_votes\":479740}",
30
+ "{\"state\":\"NE\",\"presidential_votes\":794379,\"senate_votes\":788572,\"house_votes\":772515}",
31
+ "{\"state\":\"NV\",\"presidential_votes\":1014918,\"senate_votes\":997805,\"house_votes\":973742}",
32
+ "{\"state\":\"NH\",\"presidential_votes\":710972,\"senate_votes\":null,\"house_votes\":682416}",
33
+ "{\"state\":\"NJ\",\"presidential_votes\":3640292,\"senate_votes\":3374668,\"house_votes\":3452867}",
34
+ "{\"state\":\"NM\",\"presidential_votes\":783758,\"senate_votes\":775793,\"house_votes\":746090}",
35
+ "{\"state\":\"NY\",\"presidential_votes\":7081159,\"senate_votes\":6679678,\"house_votes\":6469725}",
36
+ "{\"state\":\"NC\",\"presidential_votes\":4505372,\"senate_votes\":null,\"house_votes\":4384112}",
37
+ "{\"state\":\"ND\",\"presidential_votes\":322627,\"senate_votes\":320851,\"house_votes\":316071}",
38
+ "{\"state\":\"MP\",\"presidential_votes\":null,\"senate_votes\":null,\"house_votes\":12332}",
39
+ "{\"state\":\"OH\",\"presidential_votes\":5580840,\"senate_votes\":5449018,\"house_votes\":5140321}",
40
+ "{\"state\":\"OK\",\"presidential_votes\":1334872,\"senate_votes\":null,\"house_votes\":1325935}",
41
+ "{\"state\":\"OR\",\"presidential_votes\":1789270,\"senate_votes\":null,\"house_votes\":1708168}",
42
+ "{\"state\":\"PA\",\"presidential_votes\":5753670,\"senate_votes\":5629491,\"house_votes\":5560595}",
43
+ "{\"state\":\"PR\",\"presidential_votes\":null,\"senate_votes\":null,\"house_votes\":1856345}",
44
+ "{\"state\":\"RI\",\"presidential_votes\":446049,\"senate_votes\":418189,\"house_votes\":427775}",
45
+ "{\"state\":\"SC\",\"presidential_votes\":1964118,\"senate_votes\":null,\"house_votes\":1802734}",
46
+ "{\"state\":\"SD\",\"presidential_votes\":363815,\"senate_votes\":null,\"house_votes\":361429}",
47
+ "{\"state\":\"TN\",\"presidential_votes\":2458577,\"senate_votes\":2321477,\"house_votes\":2283727}",
48
+ "{\"state\":\"TX\",\"presidential_votes\":7993851,\"senate_votes\":7864822,\"house_votes\":7664208}",
49
+ "{\"state\":\"UT\",\"presidential_votes\":1017440,\"senate_votes\":1006901,\"house_votes\":998897}",
50
+ "{\"state\":\"VT\",\"presidential_votes\":299290,\"senate_votes\":292762,\"house_votes\":289931}",
51
+ "{\"state\":\"VI\",\"presidential_votes\":null,\"senate_votes\":null,\"house_votes\":19170}",
52
+ "{\"state\":\"VA\",\"presidential_votes\":3854489,\"senate_votes\":3802196,\"house_votes\":3740455}",
53
+ "{\"state\":\"WA\",\"presidential_votes\":3125516,\"senate_votes\":3069417,\"house_votes\":3364001}",
54
+ "{\"state\":\"WV\",\"presidential_votes\":670438,\"senate_votes\":660202,\"house_votes\":641354}",
55
+ "{\"state\":\"WI\",\"presidential_votes\":3068434,\"senate_votes\":3009411,\"house_votes\":2866050}",
56
+ "{\"state\":\"WY\",\"presidential_votes\":249061,\"senate_votes\":244862,\"house_votes\":241621}"]
@@ -0,0 +1,56 @@
1
+ ["{\"state_abbrev\":\"AL\",\"democratic_candidates\":1489194,\"republican_candidates\":2489549,\"other_candidates\":29225}",
2
+ "{\"state_abbrev\":\"AK\",\"democratic_candidates\":205567,\"republican_candidates\":349972,\"other_candidates\":34760}",
3
+ "{\"state_abbrev\":\"AS\",\"democratic_candidates\":7659,\"republican_candidates\":null,\"other_candidates\":5417}",
4
+ "{\"state_abbrev\":\"AZ\",\"democratic_candidates\":3008768,\"republican_candidates\":3469774,\"other_candidates\":237451}",
5
+ "{\"state_abbrev\":\"AR\",\"democratic_candidates\":699179,\"republican_candidates\":1285335,\"other_candidates\":123008}",
6
+ "{\"state_abbrev\":\"CA\",\"democratic_candidates\":23111612,\"republican_candidates\":14083857,\"other_candidates\":625946}",
7
+ "{\"state_abbrev\":\"CO\",\"democratic_candidates\":2403556,\"republican_candidates\":2329039,\"other_candidates\":287766}",
8
+ "{\"state_abbrev\":\"CT\",\"democratic_candidates\":2582464,\"republican_candidates\":1730041,\"other_candidates\":224730}",
9
+ "{\"state_abbrev\":\"DE\",\"democratic_candidates\":757932,\"republican_candidates\":410941,\"other_candidates\":32714}",
10
+ "{\"state_abbrev\":\"DC\",\"democratic_candidates\":513734,\"republican_candidates\":21381,\"other_candidates\":37212}",
11
+ "{\"state_abbrev\":\"FL\",\"democratic_candidates\":12153609,\"republican_candidates\":11448236,\"other_candidates\":575814}",
12
+ "{\"state_abbrev\":\"GA\",\"democratic_candidates\":3222696,\"republican_candidates\":4182786,\"other_candidates\":48155}",
13
+ "{\"state_abbrev\":\"GU\",\"democratic_candidates\":19765,\"republican_candidates\":12995,\"other_candidates\":246}",
14
+ "{\"state_abbrev\":\"HI\",\"democratic_candidates\":861155,\"republican_candidates\":419540,\"other_candidates\":7024}",
15
+ "{\"state_abbrev\":\"ID\",\"democratic_candidates\":421084,\"republican_candidates\":827725,\"other_candidates\":38683}",
16
+ "{\"state_abbrev\":\"IL\",\"democratic_candidates\":5763214,\"republican_candidates\":4343034,\"other_candidates\":193899}",
17
+ "{\"state_abbrev\":\"IN\",\"democratic_candidates\":3576622,\"republican_candidates\":3905924,\"other_candidates\":255836}",
18
+ "{\"state_abbrev\":\"IA\",\"democratic_candidates\":1594931,\"republican_candidates\":1457122,\"other_candidates\":66976}",
19
+ "{\"state_abbrev\":\"KS\",\"democratic_candidates\":636231,\"republican_candidates\":1433615,\"other_candidates\":147864}",
20
+ "{\"state_abbrev\":\"KY\",\"democratic_candidates\":1470712,\"republican_candidates\":2288864,\"other_candidates\":73690}",
21
+ "{\"state_abbrev\":\"LA\",\"democratic_candidates\":1168331,\"republican_candidates\":2391876,\"other_candidates\":236062}",
22
+ "{\"state_abbrev\":\"ME\",\"democratic_candidates\":922025,\"republican_candidates\":773657,\"other_candidates\":411898}",
23
+ "{\"state_abbrev\":\"MD\",\"democratic_candidates\":4778744,\"republican_candidates\":2523566,\"other_candidates\":623746}",
24
+ "{\"state_abbrev\":\"MA\",\"democratic_candidates\":5698230,\"republican_candidates\":3343999,\"other_candidates\":173525}",
25
+ "{\"state_abbrev\":\"MI\",\"democratic_candidates\":7787638,\"republican_candidates\":6121182,\"other_candidates\":378828}",
26
+ "{\"state_abbrev\":\"MN\",\"democratic_candidates\":4961746,\"republican_candidates\":3398608,\"other_candidates\":232797}",
27
+ "{\"state_abbrev\":\"MS\",\"democratic_candidates\":1477814,\"republican_candidates\":2124007,\"other_candidates\":133506}",
28
+ "{\"state_abbrev\":\"MO\",\"democratic_candidates\":3837475,\"republican_candidates\":4012185,\"other_candidates\":309356}",
29
+ "{\"state_abbrev\":\"MT\",\"democratic_candidates\":642901,\"republican_candidates\":741447,\"other_candidates\":65506}",
30
+ "{\"state_abbrev\":\"NE\",\"democratic_candidates\":911299,\"republican_candidates\":1426933,\"other_candidates\":17234}",
31
+ "{\"state_abbrev\":\"NV\",\"democratic_candidates\":1430763,\"republican_candidates\":1378462,\"other_candidates\":177240}",
32
+ "{\"state_abbrev\":\"NH\",\"democratic_candidates\":710486,\"republican_candidates\":641554,\"other_candidates\":41348}",
33
+ "{\"state_abbrev\":\"NJ\",\"democratic_candidates\":6071704,\"republican_candidates\":4237359,\"other_candidates\":158764}",
34
+ "{\"state_abbrev\":\"NM\",\"democratic_candidates\":1233241,\"republican_candidates\":1010317,\"other_candidates\":62083}",
35
+ "{\"state_abbrev\":\"NY\",\"democratic_candidates\":12822779,\"republican_candidates\":5957238,\"other_candidates\":1450545}",
36
+ "{\"state_abbrev\":\"NC\",\"democratic_candidates\":4396748,\"republican_candidates\":4407562,\"other_candidates\":85174}",
37
+ "{\"state_abbrev\":\"ND\",\"democratic_candidates\":417859,\"republican_candidates\":519878,\"other_candidates\":21812}",
38
+ "{\"state_abbrev\":\"MP\",\"democratic_candidates\":null,\"republican_candidates\":2503,\"other_candidates\":9829}",
39
+ "{\"state_abbrev\":\"OH\",\"democratic_candidates\":8002851,\"republican_candidates\":7717396,\"other_candidates\":449932}",
40
+ "{\"state_abbrev\":\"OK\",\"democratic_candidates\":853871,\"republican_candidates\":1748197,\"other_candidates\":58739}",
41
+ "{\"state_abbrev\":\"OR\",\"democratic_candidates\":1920148,\"republican_candidates\":1442014,\"other_candidates\":135276}",
42
+ "{\"state_abbrev\":\"PA\",\"democratic_candidates\":8805176,\"republican_candidates\":7899636,\"other_candidates\":238944}",
43
+ "{\"state_abbrev\":\"PR\",\"democratic_candidates\":null,\"republican_candidates\":null,\"other_candidates\":1856345}",
44
+ "{\"state_abbrev\":\"RI\",\"democratic_candidates\":783390,\"republican_candidates\":465352,\"other_candidates\":43271}",
45
+ "{\"state_abbrev\":\"SC\",\"democratic_candidates\":1580132,\"republican_candidates\":2097774,\"other_candidates\":88946}",
46
+ "{\"state_abbrev\":\"SD\",\"democratic_candidates\":298828,\"republican_candidates\":418250,\"other_candidates\":8166}",
47
+ "{\"state_abbrev\":\"TN\",\"democratic_candidates\":2463104,\"republican_candidates\":4338335,\"other_candidates\":262342}",
48
+ "{\"state_abbrev\":\"TX\",\"democratic_candidates\":9452951,\"republican_candidates\":13439250,\"other_candidates\":630680}",
49
+ "{\"state_abbrev\":\"UT\",\"democratic_candidates\":877995,\"republican_candidates\":2046081,\"other_candidates\":99162}",
50
+ "{\"state_abbrev\":\"VT\",\"democratic_candidates\":407839,\"republican_candidates\":233139,\"other_candidates\":241005}",
51
+ "{\"state_abbrev\":\"VI\",\"democratic_candidates\":11512,\"republican_candidates\":2131,\"other_candidates\":5527}",
52
+ "{\"state_abbrev\":\"VA\",\"democratic_candidates\":5787912,\"republican_candidates\":5484825,\"other_candidates\":124403}",
53
+ "{\"state_abbrev\":\"WA\",\"democratic_candidates\":5463759,\"republican_candidates\":4015725,\"other_candidates\":79450}",
54
+ "{\"state_abbrev\":\"WV\",\"democratic_candidates\":895268,\"republican_candidates\":1042695,\"other_candidates\":34031}",
55
+ "{\"state_abbrev\":\"WI\",\"democratic_candidates\":4613104,\"republican_candidates\":4190087,\"other_candidates\":140704}",
56
+ "{\"state_abbrev\":\"WY\",\"democratic_candidates\":179878,\"republican_candidates\":522664,\"other_candidates\":33002}"]
@@ -0,0 +1,112 @@
1
+ ["{\"abbrev\":\"AA\",\"name\":\"Abundant America\"}",
2
+ "{\"abbrev\":\"AE\",\"name\":\"Americans Elect\"}",
3
+ "{\"abbrev\":\"AF\",\"name\":\"America First\"}",
4
+ "{\"abbrev\":\"AIP\",\"name\":\"American Independent \"}",
5
+ "{\"abbrev\":\"AMC\",\"name\":\"American Constitution Party\"}",
6
+ "{\"abbrev\":\"AMP\",\"name\":\"America’s Party\"}",
7
+ "{\"abbrev\":\"APF\",\"name\":\"America’s Party of Florida\"}",
8
+ "{\"abbrev\":\"ATP\",\"name\":\"American Third Position\"}",
9
+ "{\"abbrev\":\"BFC\",\"name\":\"Bednarski for Congress\"}",
10
+ "{\"abbrev\":\"BFJ\",\"name\":\"Bob's for Jobs\"}",
11
+ "{\"abbrev\":\"BP\",\"name\":\"By Petition\"}",
12
+ "{\"abbrev\":\"CC\",\"name\":\"Constitutional Conservative\"}",
13
+ "{\"abbrev\":\"CCC\",\"name\":\"Conservative, Compassionate, Creative\"}",
14
+ "{\"abbrev\":\"CG\",\"name\":\"Constitutional Government\"}",
15
+ "{\"abbrev\":\"CHA\",\"name\":\"Change, Change, Change\"}",
16
+ "{\"abbrev\":\"CON\",\"name\":\"Constitution \"}",
17
+ "{\"abbrev\":\"COU\",\"name\":\"Country\"}",
18
+ "{\"abbrev\":\"CPF\",\"name\":\"Constitution Party of Florida \"}",
19
+ "{\"abbrev\":\"CRV\",\"name\":\"Conservative\"}",
20
+ "{\"abbrev\":\"CSP\",\"name\":\"Common Sense\"}",
21
+ "{\"abbrev\":\"D\",\"name\":\"Democratic \"}",
22
+ "{\"abbrev\":\"DCG\",\"name\":\"D.C. Statehood Green\"}",
23
+ "{\"abbrev\":\"DFL\",\"name\":\"Democratic-Farmer Labor\"}",
24
+ "{\"abbrev\":\"DNL\",\"name\":\"Democratic-Nonpartisan League\"}",
25
+ "{\"abbrev\":\"EWP\",\"name\":\"Employmentwealth Party\"}",
26
+ "{\"abbrev\":\"FDR\",\"name\":\"F.D.R. Democrat Party\"}",
27
+ "{\"abbrev\":\"GI\",\"name\":\"Green Independent \"}",
28
+ "{\"abbrev\":\"GOP\",\"name\":\"G.O.P. Party\"}",
29
+ "{\"abbrev\":\"GPF\",\"name\":\"Green Party of Florida\"}",
30
+ "{\"abbrev\":\"GR\",\"name\":\"Green-Rainbow\"}",
31
+ "{\"abbrev\":\"GRE\",\"name\":\"Green \"}",
32
+ "{\"abbrev\":\"GRT\",\"name\":\"Grassroots\"}",
33
+ "{\"abbrev\":\"IAP\",\"name\":\"Independent American  Party\"}",
34
+ "{\"abbrev\":\"IDA\",\"name\":\"I.D.E.A.\"}",
35
+ "{\"abbrev\":\"IDE\",\"name\":\"Independent Party of Delaware\"}",
36
+ "{\"abbrev\":\"IDP\",\"name\":\"Independence\"}",
37
+ "{\"abbrev\":\"IFL\",\"name\":\"Independent for Liberty\"}",
38
+ "{\"abbrev\":\"IFM\",\"name\":\"Independent for Maine\"}",
39
+ "{\"abbrev\":\"IG\",\"name\":\"Iowa Green\"}",
40
+ "{\"abbrev\":\"IGR\",\"name\":\"Independent Green\"}",
41
+ "{\"abbrev\":\"IND\",\"name\":\"Independent \"}",
42
+ "{\"abbrev\":\"IP\",\"name\":\"Independent Party\"}",
43
+ "{\"abbrev\":\"IR\",\"name\":\"Independent Reform Candidate\"}",
44
+ "{\"abbrev\":\"JPF\",\"name\":\"Justice Party of Florida\"}",
45
+ "{\"abbrev\":\"JSI\",\"name\":\"Jersey Strong Independents\"}",
46
+ "{\"abbrev\":\"JUS\",\"name\":\"Justice Party\"}",
47
+ "{\"abbrev\":\"LBF\",\"name\":\"Libertarian Party of Florida\"}",
48
+ "{\"abbrev\":\"LIB\",\"name\":\"Libertarian \"}",
49
+ "{\"abbrev\":\"LMP\",\"name\":\"Legalize Marijuana Party\"}",
50
+ "{\"abbrev\":\"LU\",\"name\":\"Liberty Union\"}",
51
+ "{\"abbrev\":\"MOP\",\"name\":\"Minnesota Open Progresssives\"}",
52
+ "{\"abbrev\":\"MTP\",\"name\":\"Mountain Party\"}",
53
+ "{\"abbrev\":\"MUS\",\"name\":\"Sovereignty Union Movement\"}",
54
+ "{\"abbrev\":\"N\",\"name\":\"Nonpartisan\"}",
55
+ "{\"abbrev\":\"NAF\",\"name\":\"Non-Affiliated\"}",
56
+ "{\"abbrev\":\"NJJ\",\"name\":\"New Jersey Justice Party\"}",
57
+ "{\"abbrev\":\"NLP\",\"name\":\"Natural Law Party\"}",
58
+ "{\"abbrev\":\"NMI\",\"name\":\"New Mexico Independent Party\"}",
59
+ "{\"abbrev\":\"NNP\",\"name\":\"Prefers The 99% Party\"}",
60
+ "{\"abbrev\":\"NON\",\"name\":\"Non-Party\"}",
61
+ "{\"abbrev\":\"NOP\",\"name\":\"No Party Preference\"}",
62
+ "{\"abbrev\":\"NOT\",\"name\":\"None of Them\"}",
63
+ "{\"abbrev\":\"NP\",\"name\":\"Nominated by Petition\"}",
64
+ "{\"abbrev\":\"NPA\",\"name\":\"No Party Affiliation\"}",
65
+ "{\"abbrev\":\"NPP\",\"name\":\"New Progressive Party\"}",
66
+ "{\"abbrev\":\"NS\",\"name\":\"No Slogan\"}",
67
+ "{\"abbrev\":\"NSA\",\"name\":\"NSA Did 911\"}",
68
+ "{\"abbrev\":\"NSF\",\"name\":\"No Slogan Filed\"}",
69
+ "{\"abbrev\":\"OAI\",\"name\":\"Overthrow All Incumbents\"}",
70
+ "{\"abbrev\":\"OBF\",\"name\":\"Objectivist Party of Florida\"}",
71
+ "{\"abbrev\":\"OBJ\",\"name\":\"Objectivist Party\"}",
72
+ "{\"abbrev\":\"OCG\",\"name\":\"Opposing Congressional Gridlock\"}",
73
+ "{\"abbrev\":\"P\",\"name\":\"Prohibition Party\"}",
74
+ "{\"abbrev\":\"PAC\",\"name\":\"Politicians are Crooks\"}",
75
+ "{\"abbrev\":\"PAF\",\"name\":\"Peace and Freedom\"}",
76
+ "{\"abbrev\":\"PC\",\"name\":\"Petitioning Candidate\"}",
77
+ "{\"abbrev\":\"PEP\",\"name\":\"Peace and Prosperity\"}",
78
+ "{\"abbrev\":\"PFF\",\"name\":\"Peace and Freedom Party of Florida\"}",
79
+ "{\"abbrev\":\"PFP\",\"name\":\"Peace and Freedom\"}",
80
+ "{\"abbrev\":\"PG\",\"name\":\"Pacific Green \"}",
81
+ "{\"abbrev\":\"PIN\",\"name\":\"Progressive Independent Party\"}",
82
+ "{\"abbrev\":\"PPD\",\"name\":\"Popular Democratic Party\"}",
83
+ "{\"abbrev\":\"PPR\",\"name\":\"Puerto Ricans for Puerto Rico\"}",
84
+ "{\"abbrev\":\"PPT\",\"name\":\"Party of the Working People\"}",
85
+ "{\"abbrev\":\"PRI\",\"name\":\"Puerto Rican Independence Party\"}",
86
+ "{\"abbrev\":\"PRO\",\"name\":\"Progressive\"}",
87
+ "{\"abbrev\":\"PSL\",\"name\":\"Party for Socialism and Liberation\"}",
88
+ "{\"abbrev\":\"R\",\"name\":\"Republican \"}",
89
+ "{\"abbrev\":\"RAP\",\"name\":\"Restoring America's Promise\"}",
90
+ "{\"abbrev\":\"REF\",\"name\":\"Reform\"}",
91
+ "{\"abbrev\":\"RFI\",\"name\":\"Responsibility Fairness Integrity\"}",
92
+ "{\"abbrev\":\"RN\",\"name\":\"Reform Nation\"}",
93
+ "{\"abbrev\":\"SEP\",\"name\":\"Socialist Equality Party\"}",
94
+ "{\"abbrev\":\"SFL\",\"name\":\"Socialist Party of Florida\"}",
95
+ "{\"abbrev\":\"SLF\",\"name\":\"Party for Socialism and Liberation - Florida\"}",
96
+ "{\"abbrev\":\"SLP\",\"name\":\"Socialism and Liberation Party\"}",
97
+ "{\"abbrev\":\"STG\",\"name\":\"Statehood Green\"}",
98
+ "{\"abbrev\":\"SUS\",\"name\":\"Socialist Party USA\"}",
99
+ "{\"abbrev\":\"SWP\",\"name\":\"Socialist Workers Party\"}",
100
+ "{\"abbrev\":\"TIC\",\"name\":\"Totally Independent Candidate\"}",
101
+ "{\"abbrev\":\"TPA\",\"name\":\"The People's Agenda\"}",
102
+ "{\"abbrev\":\"TRP\",\"name\":\"Tax Revolt\"}",
103
+ "{\"abbrev\":\"TVH\",\"name\":\"Truth Vision Hope\"}",
104
+ "{\"abbrev\":\"UIS\",\"name\":\"Unity Is Strength\"}",
105
+ "{\"abbrev\":\"UJP\",\"name\":\"Utah Justice Party\"}",
106
+ "{\"abbrev\":\"UN\",\"name\":\"Unaffiliated \"}",
107
+ "{\"abbrev\":\"USM\",\"name\":\"United States Marijuana\"}",
108
+ "{\"abbrev\":\"UST\",\"name\":\"U.S. Taxpayers \"}",
109
+ "{\"abbrev\":\"VKS\",\"name\":\"Vote KISS\"}",
110
+ "{\"abbrev\":\"W\",\"name\":\"Write-In\"}",
111
+ "{\"abbrev\":\"WF\",\"name\":\"Working Families \"}",
112
+ "{\"abbrev\":\"WTP\",\"name\":\"We the People\"}"]
data/fec_results.gemspec CHANGED
@@ -21,5 +21,6 @@ Gem::Specification.new do |spec|
21
21
  spec.add_development_dependency "bundler", "~> 1.3"
22
22
  spec.add_development_dependency "rake"
23
23
  spec.add_dependency "remote_table"
24
+ spec.add_dependency "roo-xls"
24
25
  spec.add_dependency "american_date"
25
26
  end
data/images/bg_hr.png ADDED
Binary file
Binary file
Binary file
Binary file
data/index.html ADDED
@@ -0,0 +1,159 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+
4
+ <head>
5
+ <meta charset='utf-8' />
6
+ <meta http-equiv="X-UA-Compatible" content="chrome=1" />
7
+ <meta name="description" content="FEC Results : Federal election results data from the Federal Election Commission" />
8
+
9
+ <link rel="stylesheet" type="text/css" media="screen" href="stylesheets/stylesheet.css">
10
+
11
+ <title>FEC Results</title>
12
+ </head>
13
+
14
+ <body>
15
+
16
+ <!-- HEADER -->
17
+ <div id="header_wrap" class="outer">
18
+ <header class="inner">
19
+ <a id="forkme_banner" href="https://github.com/openelections/fec_results">View on GitHub</a>
20
+
21
+ <h1 id="project_title">FEC Results</h1>
22
+ <h2 id="project_tagline">Federal election results data from the Federal Election Commission</h2>
23
+
24
+ <section id="downloads">
25
+ <a class="zip_download_link" href="https://github.com/openelections/fec_results/zipball/master">Download this project as a .zip file</a>
26
+ <a class="tar_download_link" href="https://github.com/openelections/fec_results/tarball/master">Download this project as a tar.gz file</a>
27
+ </section>
28
+ </header>
29
+ </div>
30
+
31
+ <!-- MAIN CONTENT -->
32
+ <div id="main_content_wrap" class="outer">
33
+ <section id="main_content" class="inner">
34
+ <h1>
35
+ <a name="fecresults" class="anchor" href="#fecresults"><span class="octicon octicon-link"></span></a>FecResults</h1>
36
+
37
+ <p>FecResults is a Ruby library that provides access to federal election results as published by the Federal Election Commission. Although it is primarily a campaign finance disclosure agency, the FEC also compiles election results on its site. This library provides ways to access summary and contest-specific information about elections for the U.S. House of Representatives, the U.S. Senate and President from 2000-2012. This data represents regularly-scheduled primary and general elections, plus special elections held on the date of general elections. It does not include special elections held outside the regularly scheduled election calendar. The results are race-wide only; they do not contain any geographic breakdowns such as county.</p>
38
+
39
+ <p>What's not here is results below the "race-wide" level; there are no county or precinct-level results, only those for the state and House district.</p>
40
+
41
+ <p>Please be aware that there can be typos in some of the FEC results files, mainly in the FEC candidate IDs.</p>
42
+
43
+ <h2>
44
+ <a name="installation" class="anchor" href="#installation"><span class="octicon octicon-link"></span></a>Installation</h2>
45
+
46
+ <p>Add this line to your application's Gemfile:</p>
47
+
48
+ <pre><code>gem 'fec_results'
49
+ </code></pre>
50
+
51
+ <p>And then execute:</p>
52
+
53
+ <pre><code>$ bundle
54
+ </code></pre>
55
+
56
+ <p>Or install it yourself as:</p>
57
+
58
+ <pre><code>$ gem install fec_results
59
+ </code></pre>
60
+
61
+ <h2>
62
+ <a name="getting-started" class="anchor" href="#getting-started"><span class="octicon octicon-link"></span></a>Getting Started</h2>
63
+
64
+ <p>FecResults can be used to retrieve both summary and contest-specific election results. Every instance of an FecResults class must include a year passed into the <code>new</code> method.</p>
65
+
66
+ <h4>
67
+ <a name="summary-results" class="anchor" href="#summary-results"><span class="octicon octicon-link"></span></a>Summary Results</h4>
68
+
69
+ <p>The Summary class represents state, race and chamber totals for 2000-2012, plus a few other methods that are not strictly results themselves. Summary methods return Ruby objects built with OpenStruct. To get started, create an instance of the <code>Summary</code> class using a year hash:</p>
70
+
71
+ <div class="highlight highlight-ruby"><pre><span class="n">s</span> <span class="o">=</span> <span class="ss">FecResults</span><span class="p">:</span><span class="ss">:Summary</span><span class="o">.</span><span class="n">new</span><span class="p">(</span><span class="ss">:year</span> <span class="o">=&gt;</span> <span class="mi">2012</span><span class="p">)</span>
72
+ </pre></div>
73
+
74
+ <p><code>Summary</code> objects have a handful of methods, from the general election votes by race type (President, Senate, House) to party vote totals by chamber. To retrieve general election votes:</p>
75
+
76
+ <div class="highlight highlight-ruby"><pre><span class="n">general_votes</span> <span class="o">=</span> <span class="n">s</span><span class="o">.</span><span class="n">general_election_votes</span>
77
+ <span class="o">=&gt;</span> <span class="o">[&lt;</span><span class="no">OpenStruct</span> <span class="n">state</span><span class="o">=</span><span class="s2">"AL"</span><span class="p">,</span> <span class="n">presidential_votes</span><span class="o">=</span><span class="mi">2074338</span><span class="p">,</span> <span class="n">senate_votes</span><span class="o">=</span><span class="kp">nil</span><span class="p">,</span> <span class="n">house_votes</span><span class="o">=</span><span class="mi">1933630</span><span class="o">&gt;</span><span class="p">,</span> <span class="o">&lt;</span><span class="no">OpenStruct</span> <span class="n">state</span><span class="o">=</span><span class="s2">"AK"</span><span class="p">,</span> <span class="n">presidential_votes</span><span class="o">=</span><span class="mi">300495</span><span class="p">,</span> <span class="n">senate_votes</span><span class="o">=</span><span class="kp">nil</span><span class="p">,</span> <span class="n">house_votes</span><span class="o">=</span><span class="mi">289804</span><span class="o">&gt;</span><span class="p">,</span><span class="o">.</span><span class="n">.</span><span class="o">.]</span>
78
+ <span class="n">general_votes</span><span class="o">.</span>
79
+ <span class="n">alabama</span> <span class="o">=</span> <span class="n">general_votes</span><span class="o">.</span><span class="n">first</span>
80
+ <span class="o">=&gt;</span> <span class="o">&lt;</span><span class="no">OpenStruct</span> <span class="n">state</span><span class="o">=</span><span class="s2">"AL"</span><span class="p">,</span> <span class="n">presidential_votes</span><span class="o">=</span><span class="mi">2074338</span><span class="p">,</span> <span class="n">senate_votes</span><span class="o">=</span><span class="kp">nil</span><span class="p">,</span> <span class="n">house_votes</span><span class="o">=</span><span class="mi">1933630</span><span class="o">&gt;</span>
81
+ <span class="n">alabama</span><span class="o">.</span><span class="n">house_votes</span>
82
+ <span class="o">=&gt;</span> <span class="mi">1933630</span>
83
+ </pre></div>
84
+
85
+ <p>Another way to isolate a single state is to pass in an optional hash with the state abbreviation to the method called. The state filter is the only filter for <code>Summary</code> objects.</p>
86
+
87
+ <div class="highlight highlight-ruby"><pre><span class="n">alabama_votes</span> <span class="o">=</span> <span class="n">s</span><span class="o">.</span><span class="n">general_election_votes</span><span class="p">({</span><span class="ss">:state</span> <span class="o">=&gt;</span> <span class="s1">'AL'</span><span class="p">})</span>
88
+ <span class="o">=&gt;</span> <span class="o">[&lt;</span><span class="no">OpenStruct</span> <span class="n">state</span><span class="o">=</span><span class="s2">"AL"</span><span class="p">,</span> <span class="n">presidential_votes</span><span class="o">=</span><span class="mi">2074338</span><span class="p">,</span> <span class="n">senate_votes</span><span class="o">=</span><span class="kp">nil</span><span class="p">,</span> <span class="n">house_votes</span><span class="o">=</span><span class="mi">1933630</span><span class="o">&gt;</span><span class="p">,</span> <span class="o">&lt;</span><span class="no">OpenStruct</span> <span class="n">state</span><span class="o">=</span><span class="s2">"AK"</span><span class="p">,</span> <span class="n">presidential_votes</span><span class="o">=</span><span class="mi">300495</span><span class="p">,</span> <span class="n">senate_votes</span><span class="o">=</span><span class="kp">nil</span><span class="p">,</span> <span class="n">house_votes</span><span class="o">=</span><span class="mi">289804</span><span class="o">&gt;]</span>
89
+ </pre></div>
90
+
91
+ <p>The <code>Summary</code> object methods work for all years except <code>house_party_gains</code>, which only applies to the 2010 cycle. In addition to summary election results, each cycle also has a <code>party_labels</code> method that lists political parties and the abbreviations used by the FEC for that cycle's results data.</p>
92
+
93
+ <h4>
94
+ <a name="presidential-results" class="anchor" href="#presidential-results"><span class="octicon octicon-link"></span></a>Presidential Results</h4>
95
+
96
+ <p>In presidential years (2000, 2004, 2008 and 2012), FecResults offers totals of the popular and electoral vote, along with election results for both the primary and general elections. Retrieving presidential data works the same way, by passing a year:</p>
97
+
98
+ <div class="highlight highlight-ruby"><pre><span class="nb">p</span> <span class="o">=</span> <span class="ss">FecResults</span><span class="p">:</span><span class="ss">:President</span><span class="o">.</span><span class="n">new</span><span class="p">(</span><span class="ss">:year</span> <span class="o">=&gt;</span> <span class="mi">2000</span><span class="p">)</span>
99
+ <span class="nb">p</span><span class="o">.</span><span class="n">primary_party_summary</span>
100
+ <span class="o">=&gt;</span> <span class="o">[&lt;</span><span class="no">OpenStruct</span> <span class="n">party</span><span class="o">=</span><span class="s2">"Democratic Party (D)"</span><span class="p">,</span> <span class="n">total_votes</span><span class="o">=</span><span class="mi">15975066</span><span class="o">&gt;</span><span class="p">,</span> <span class="c1">#&lt;OpenStruct party="Republican Party (R)", total_votes=7940331&gt;, ..]</span>
101
+ </pre></div>
102
+
103
+ <p>Presidential methods include popular vote totals, state totals for electoral and popular votes, primary totals by party and election results for the primary and general elections.</p>
104
+
105
+ <h4>
106
+ <a name="congressional-results" class="anchor" href="#congressional-results"><span class="octicon octicon-link"></span></a>Congressional Results</h4>
107
+
108
+ <p>FecResults offers House and Senate results for 2000-2012, which are built using the <code>Result</code> object (as are presidential results). For congressional results, the file can take awhile to load, so try not to call <code>results</code> more than once, but rather save the output to a variable:</p>
109
+
110
+ <div class="highlight highlight-ruby"><pre><span class="n">c</span> <span class="o">=</span> <span class="ss">FecResults</span><span class="p">:</span><span class="ss">:Congress</span><span class="o">.</span><span class="n">new</span><span class="p">(</span><span class="ss">:year</span> <span class="o">=&gt;</span> <span class="mi">2012</span><span class="p">)</span>
111
+ <span class="n">results</span> <span class="o">=</span> <span class="n">c</span><span class="o">.</span><span class="n">results</span>
112
+ <span class="n">results</span><span class="o">.</span><span class="n">first</span>
113
+ <span class="o">=&gt;</span> <span class="o">&lt;</span><span class="ss">FecResults</span><span class="p">:</span><span class="ss">:Result</span><span class="p">:</span><span class="mh">0x007fb46e297870</span> <span class="vi">@year</span><span class="o">=</span><span class="mi">2012</span><span class="p">,</span> <span class="vi">@chamber</span><span class="o">=</span><span class="s2">"H"</span><span class="p">,</span> <span class="vi">@state</span><span class="o">=</span><span class="s2">"AL"</span><span class="p">,</span> <span class="vi">@district</span><span class="o">=</span><span class="s2">"01"</span><span class="p">,</span> <span class="vi">@fec_id</span><span class="o">=</span><span class="s2">"H2AL01077"</span><span class="p">,</span> <span class="vi">@incumbent</span><span class="o">=</span><span class="kp">true</span><span class="p">,</span> <span class="vi">@candidate_last</span><span class="o">=</span><span class="s2">"Bonner"</span><span class="p">,</span> <span class="vi">@candidate_first</span><span class="o">=</span><span class="s2">"Jo"</span><span class="p">,</span> <span class="vi">@candidate_name</span><span class="o">=</span><span class="s2">"Bonner, Jo"</span><span class="p">,</span> <span class="vi">@party</span><span class="o">=</span><span class="s2">"R"</span><span class="p">,</span> <span class="vi">@primary_votes</span><span class="o">=</span><span class="mi">48702</span><span class="p">,</span> <span class="vi">@primary_pct</span><span class="o">=</span><span class="mi">55</span><span class="o">.</span><span class="mi">54959907839358</span><span class="p">,</span> <span class="vi">@primary_unopposed</span><span class="o">=</span><span class="kp">false</span><span class="p">,</span> <span class="vi">@runoff_votes</span><span class="o">=</span><span class="kp">nil</span><span class="p">,</span> <span class="vi">@runoff_pct</span><span class="o">=</span><span class="kp">nil</span><span class="p">,</span> <span class="vi">@general_votes</span><span class="o">=</span><span class="mi">196374</span><span class="p">,</span> <span class="vi">@general_pct</span><span class="o">=</span><span class="mi">97</span><span class="o">.</span><span class="mi">85624588889553</span><span class="p">,</span> <span class="vi">@general_unopposed</span><span class="o">=</span><span class="kp">false</span><span class="p">,</span> <span class="vi">@general_runoff_votes</span><span class="o">=</span><span class="kp">nil</span><span class="p">,</span> <span class="vi">@general_runoff_pct</span><span class="o">=</span><span class="kp">nil</span><span class="p">,</span> <span class="vi">@general_combined_party_votes</span><span class="o">=</span><span class="kp">nil</span><span class="p">,</span> <span class="vi">@general_combined_party_pct</span><span class="o">=</span><span class="kp">nil</span><span class="p">,</span> <span class="vi">@general_winner</span><span class="o">=</span><span class="kp">true</span><span class="p">,</span> <span class="vi">@notes</span><span class="o">=</span><span class="kp">nil</span><span class="o">&gt;</span>
114
+ </pre></div>
115
+
116
+ <p>Not all years have the same data available - for example, general election winners are not always marked. In addition, some states permit candidates to run as the nominee of multiple parties; these candidates usually have a <code>Result</code> instance with a combined parties total and separate instances for each party.</p>
117
+
118
+ <h3>
119
+ <a name="json-api" class="anchor" href="#json-api"><span class="octicon octicon-link"></span></a>JSON API</h3>
120
+
121
+ <p>Using the <a href="https://github.com/openelections/fec_results_generator">FecResultsGenerator library</a>, there is a static file JSON API of data retrieved by FecResults. It covers the years 2000-2012 and consists of three sections: Congress, President and Summary, matching the classes found in the gem. You can browse the API by changing the year, class name and method name. Here is a listing of the endpoints, using 2012 data:</p>
122
+
123
+ <h5>
124
+ <a name="summary" class="anchor" href="#summary"><span class="octicon octicon-link"></span></a>Summary</h5>
125
+
126
+ <ul>
127
+ <li><a href="http://openelections.github.io/fec_results/api/2012/summary/party_labels.json">Party Labels</a></li>
128
+ <li><a href="http://openelections.github.io/fec_results/api/2012/summary/chamber_votes_by_party.json">Chamber Votes by Party</a></li>
129
+ <li><a href="http://openelections.github.io/fec_results/api/2012/summary/congressional_votes_by_election.json">Congressional Votes by Election</a></li>
130
+ <li><a href="http://openelections.github.io/fec_results/api/2012/summary/general_election_votes_by_party.json">General Election Votes by Party</a></li>
131
+ </ul><h5>
132
+ <a name="president" class="anchor" href="#president"><span class="octicon octicon-link"></span></a>President</h5>
133
+
134
+ <ul>
135
+ <li><a href="http://openelections.github.io/fec_results/api/2012/president/popular_vote_summary.json">Popular Vote Summary</a></li>
136
+ <li><a href="http://openelections.github.io/fec_results/api/2012/president/state_electoral_and_popular_vote_summary.json">State Electoral and Popular Vote Summary</a></li>
137
+ <li><a href="http://openelections.github.io/fec_results/api/2012/president/general_election_results.json">General Election Results</a></li>
138
+ <li><a href="http://openelections.github.io/fec_results/api/2012/president/primary_election_results.json">Primary Election Results</a></li>
139
+ </ul><h5>
140
+ <a name="congress" class="anchor" href="#congress"><span class="octicon octicon-link"></span></a>Congress</h5>
141
+
142
+ <ul>
143
+ <li><a href="http://openelections.github.io/fec_results/api/2012/congress/results.json">Results</a></li>
144
+ </ul>
145
+ </section>
146
+ </div>
147
+
148
+ <!-- FOOTER -->
149
+ <div id="footer_wrap" class="outer">
150
+ <footer class="inner">
151
+ <p class="copyright">FEC Results maintained by <a href="https://github.com/openelections">openelections</a></p>
152
+ <p>Published with <a href="http://pages.github.com">GitHub Pages</a></p>
153
+ </footer>
154
+ </div>
155
+
156
+
157
+
158
+ </body>
159
+ </html>