Categories
Election Data Analysis Election Forensics Election Integrity Interesting programming technical

New WI 2020 Election Fingerprints, rev 2.0

Shortly after posting some updated WI data analysis (here) I got pointed to an even better set of data to use for generating the fingerprints. This updated dataset uses the registration numbers as of Nov 3 and the per ward vote tallies provided on the https://elections.wi.gov/ site.

I also made some code modifications in order to compute an idealized model of what the Fingerprint “should” look like, similar to what was done in the original National Academy of Sciences paper. The ideal model is based on a 2D Gaussian Mixture Model fit to the locations of top histogram bins that are >= 70% of the max histogram value. The model uses a shared covariance matrix for all of the components based off of the sample covariance of the data. In the statewide plot below the Election Fingerprint is in the top right, with the ideal model in the bottom left. On the bottom right and top left are the sums of the Election Fingerprint image across the different dimensions.

Statewide Election Fingerprint, per Ward group

We see what looks like two (or even three) superimposed lobes around the 90% turnout and 40% per Biden bin, which is consistent with my earlier low-res version, and we have a lot more detail as to the upward kurtotic smear off the main distribution. There also are a few Ward Groupings that have exceptionally high % for Biden (rarely, if ever, does a candidate receive near 100% vote share), and there are Ward Groupings that are near/over the 100% turnout marker, with the addition that some of those are ALSO either 100% Biden or 0% Biden (all big red flags)!

As discussed in the National Academy of Sciences paper that all of this work is based on, an idealized Election Fingerprint should look like a 2D Gaussian (or a multi-variate normal distribution). Or maybe, in an extremely divided populace, 2 overlapping Gaussian distributions. Deviations from this are, by definition, irregular and an indication that there might be an issue with the election. Distinct linear or non-linear features sloping away from the central lobes(s) could indicate voter manipulation or “ballot stuffing”; isolated regions at high turnout +/or very high vote percentage for one candidate could be an indication of extreme manipulation or vote substitution. Now, its true that no real Election Fingerprint will look perfectly Gaussian due to the realities of how elections operate, data errors, etc … but they should at least be close!

Testing specific Wards to check for outliers

Just like before, I went through each individual counties data to make individual county specific Fingerprints. I also used the model to find a set of “interesting” wards by testing how well the ward fit against the probability density function (pdf) of the model. Wards are deemed outliers from the model if the ward group entry had (over 25 votes total) AND (it had over 97% turnout OR it had over 97% votes for Biden OR it had an evaluated pdf of < 1E-9 against the GMM Model). The complete list of outliers according to this model is below, along with the sums for the outlier wards.

BidenVotesTrumpVotesTotalVotesRegisteredVotes
Sum 213312139381359130446866
LocalityBidenVotesTrumpVotesTotalVotesRegisteredVotersTurnoutBidenPctTrumpPctModel Probability
ASHLAND COUNTY TOWN OF LA POINTE WARD 12365229432490.740740740740780.272108843537417.6870748299321.92477676888761E-12
ASHLAND COUNTY TOWN OF SANBORN WARDS 1-24428553070575.17730496453983.396226415094316.03773584905666.11329669551507E-18
BARRON COUNTY CITY OF BARRON WARDS 1-76838371532196378.043810494141644.582245430809454.63446475195825.63608603904006E-10
BAYFIELD COUNTY CITY OF BAYFIELD WARDS 1-43145737345482.1585903083784.182305630026815.28150134048261.02971568650162E-21
BAYFIELD COUNTY CITY OF WASHBURN WARDS 1-49443201283149385.93436034829273.577552611067824.94154325798914.1581192007984E-12
BAYFIELD COUNTY TOWN OF BAYFIELD WARD 139915856464088.12570.744680851063828.01418439716316.44035024538831E-10
BAYFIELD COUNTY TOWN OF RUSSELL WARDS 1-26019169991276.644736842105385.979971387696713.01859799713887.1789626891056E-28
BROWN COUNTY TOWN OF MORRISON WARDS 1-2196768979111288.039568345323720.020429009193178.44739530132795.20055002328544E-11
COLUMBIA COUNTY TOWN OF RANDOLPH WARD 19237147052689.353612167300419.574468085106478.9361702127661.49308448006707E-12
DANE COUNTY CITY OF MADISON WARD 1277713929398.924731182795783.69565217391314.13043478260876.39561194230751E-06
DANE COUNTY CITY OF MADISON WARD 140378464797.872340425531980.434782608695717.39130434782612.44340709557608E-05
DANE COUNTY CITY OF MADISON WARD 48659148819142657.433380084151580.463980463980518.07081807081813.52762840567405E-10
DANE COUNTY CITY OF MADISON WARD 4919684232427422757.41660752306681.087762669962917.42892459826953.68273621333911E-10
DANE COUNTY CITY OF MADISON WARD 5014622381741307456.636304489264883.974727168294113.67030442274551.25242937905889E-10
DANE COUNTY CITY OF MADISON WARD 542336830463747.72370486656276.644736842105322.36842105263165.70258703816946E-18
DANE COUNTY CITY OF MADISON WARD 5513462701649293956.107519564477781.625227410551816.37355973317165.509685735556E-11
DANE COUNTY CITY OF MADISON WARD 56655195866179948.137854363535375.63510392609722.51732101616639.6228505281742E-18
DANE COUNTY CITY OF MADISON WARD 57750156923179151.53545505304381.256771397616516.90140845070422.47205132607457E-14
DANE COUNTY CITY OF MADISON WARD 583415840676053.421052631578983.990147783251214.28571428571437.30999920891661E-13
DANE COUNTY CITY OF MADISON WARD 593657745293048.602150537634480.752212389380517.03539823008858.17744524385459E-17
DANE COUNTY CITY OF SUN PRAIRIE WARDS 20-22,24-25,281757725625899.224806201550468.35937530.0781250.000158078462324593
DOUGLAS COUNTY CITY OF SUPERIOR WARDS 17-19,30-3211736201856252873.417721518987363.200431034482833.40517241379313.37051056052282E-11
DOUGLAS COUNTY TOWN OF DAIRYLAND WARD 12510112915384.313725490196119.379844961240378.29457364341082.75440521379353E-13
DUNN COUNTY CITY OF MENOMONIE WARD 635325762083174.608904933814756.935483870967741.45161290322584.75782477468469E-10
DUNN COUNTY CITY OF MENOMONIE WARDS 3-4523369919156858.60969387755156.909684439608340.15233949945591.08064146240878E-21
DUNN COUNTY CITY OF MENOMONIE WARDS 5,7361279673127652.742946708463953.640416047548341.45616641901938.60680131606536E-27
DUNN COUNTY CITY OF MENOMONIE WARDS 8-97515281308179073.07262569832457.415902140672840.36697247706425.1671988172534E-11
EAU CLAIRE COUNTY CITY OF ALTOONA WARDS 12-1616112726103.84615384615459.259259259259340.74074074074077.25926716445429E-07
EAU CLAIRE COUNTY CITY OF EAU CLAIRE WARD 20360215596124647.833065810593960.402684563758436.07382550335576.79322707506469E-21
EAU CLAIRE COUNTY CITY OF EAU CLAIRE WARD 5451209679125554.103585657370566.421207658321130.7805596465393.54653273188261E-16
EAU CLAIRE COUNTY CITY OF EAU CLAIRE WARD 6535186743116963.558597091531272.005383580080725.03364737550475.48820883152761E-11
EAU CLAIRE COUNTY TOWN OF FAIRCHILD WARD 13513517419589.230769230769220.114942528735677.58620689655179.210877887475E-13
EAU CLAIRE COUNTY TOWN OF WILSON WARD 14917222325786.770428015564221.973094170403677.13004484304931.18540801589859E-11
FOND DU LAC COUNTY CITY OF FOND DU LAC WARD 136042478898879.757085020242945.685279187817353.80710659898486.79364522819134E-11
FOND DU LAC COUNTY CITY OF FOND DU LAC WARD 1131029861881076.296296296296350.161812297734648.22006472491912.55555808340175E-16
FOND DU LAC COUNTY CITY OF FOND DU LAC WARD 1330932264980980.222496909765147.611710323574749.61479198767331.11701213986908E-11
FOND DU LAC COUNTY CITY OF FOND DU LAC WARD 1633835169883084.096385542168748.424068767908350.28653295128942.97370363102557E-10
FOND DU LAC COUNTY CITY OF FOND DU LAC WARD 1711410422226284.732824427480951.351351351351346.84684684684685.93415306364651E-12
FOND DU LAC COUNTY CITY OF FOND DU LAC WARD 1933637172187982.025028441410746.601941747572851.45631067961164.52742910745579E-10
FOND DU LAC COUNTY CITY OF FOND DU LAC WARD 232931665983079.397590361445849.924127465857447.95144157814871.15316292964617E-13
FOND DU LAC COUNTY CITY OF FOND DU LAC WARD 56836611378162684.747847478474849.564586357039247.96806966618299.37767055176873E-11
FOND DU LAC COUNTY CITY OF FOND DU LAC WARD 934132667988576.723163841807950.22091310751148.01178203240065.66905415025079E-16
FOND DU LAC COUNTY CITY OF RIPON WARDS 4-6415403829108576.405529953917150.060313630880648.61278648974673.75104914617071E-16
FOND DU LAC COUNTY CITY OF RIPON WARDS 9-115405921152139682.521489971346746.87551.38888888888895.52488291943727E-10
FOREST COUNTY TOWN OF NASHVILLE WARD 21315418625074.470.430107526881729.03225806451615.58741907395928E-23
GRANT COUNTY CITY OF PLATTEVILLE WARDS 5-6335294662114957.61531766753750.604229607250844.41087613293053.46889241295325E-26
GRANT COUNTY CITY OF PLATTEVILLE WARDS 7-98556251547212972.663222170032955.268261150614140.40077569489331.43548705444654E-10
GRANT COUNTY VILLAGE OF WOODMAN WARD 11235476968.115942028985525.53191489361774.4680851063831.82801386794522E-13
JACKSON COUNTY TOWN OF BEAR BLUFF WARD 1118910010892.592592592592611891.36352878176187E-10
JACKSON COUNTY TOWN OF KOMENSKY WARD 11463017622279.279279279279382.954545454545517.04545454545451.32889222362522E-25
JEFFERSON COUNTY CITY OF WHITEWATER WARD 121158720550140.918163672654756.097560975609842.43902439024392.12872002012183E-42
JEFFERSON COUNTY CITY OF WHITEWATER WARDS 10-1135122359075877.836411609498759.491525423728837.79661016949152.13791245784257E-10
JEFFERSON COUNTY VILLAGE OF CAMBRIDGE WARD 14420657487.837837837837867.692307692307730.76923076923088.22755433390597E-15
KENOSHA COUNTY CITY OF KENOSHA WARD 1029111341361966.720516962843370.460048426150127.36077481840192.06776570315375E-10
KENOSHA COUNTY CITY OF KENOSHA WARD 31626023053043.396226415094370.434782608695726.08695652173913.43956135655265E-34
KENOSHA COUNTY CITY OF KENOSHA WARD 33233263378.787878787878888.461538461538511.53846153846155.42133845876956E-13
KENOSHA COUNTY CITY OF KENOSHA WARD 72739437455767.145421903052172.994652406417125.13368983957226.87529928579931E-11
KEWAUNEE COUNTY CITY OF ALGOMA WARDS 1-68258191685198085.101010101010148.961424332344248.60534124629089.13667635453448E-11
LA CROSSE COUNTY CITY OF LA CROSSE WARD 1120014434961456.840390879478857.306590257879741.26074498567344.45768797779824E-11
LA CROSSE COUNTY CITY OF LA CROSSE WARD 8518398936203545.99508599508655.341880341880342.52136752136753.353166809769E-20
LANGLADE COUNTY CITY OF ANTIGO WARD 420120340649781.690140845070449.5073891625616506.0338889427495E-11
LANGLADE COUNTY CITY OF ANTIGO WARD 512817130741174.695863746958641.693811074918655.7003257328994.05169423409582E-10
MANITOWOC COUNTY CITY OF MANITOWOC WARDS 5-68076781520184282.519001085776353.092105263157944.60526315789473.74295368009036E-12
MANITOWOC COUNTY CITY OF MANITOWOC WARDS 7-84985401061137177.388767323121846.936852026390250.89538171536292.85889433338131E-12
MARATHON COUNTY CITY OF WAUSAU WARD 631519653169176.845151953690359.322033898305136.91148775894542.35008171069057E-11
MARATHON COUNTY CITY OF WAUSAU WARD 827920850071270.224719101123655.841.61.41787361998521E-14
MILWAUKEE COUNTY CITY OF CUDAHY WARDS 1-312257291984243381.545417180435761.743951612903236.74395161290327.55840876244649E-16
MILWAUKEE COUNTY CITY OF CUDAHY WARDS 10-129639361924237481.04465037910750.05197505197548.64864864864871.74595382047536E-23
MILWAUKEE COUNTY CITY OF CUDAHY WARDS 13-15111810502189263383.137105962780151.073549566011947.96710826861581.04744228724223E-23
MILWAUKEE COUNTY CITY OF CUDAHY WARDS 4-69837971819229579.259259259259354.04068169323843.81528312259489.06241072063201E-20
MILWAUKEE COUNTY CITY OF CUDAHY WARDS 7-98577151595210275.880114176974353.73040752351144.82758620689668.54298236281862E-19
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 1024219744648192.723492723492754.260089686098744.17040358744391.46465970777214E-27
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 115406531203135488.847858197932144.887780548628454.28096425602664.20290665007461E-32
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 1233750284998186.544342507645339.693757361601959.12838633686692.24476659505987E-35
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 135526351200134489.28571428571434652.91666666666671.90914119352679E-31
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 144945281033114989.904264577893847.821878025169451.11326234269122.33294864294759E-30
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 15A20933054365083.538461538461538.489871086556260.77348066298347.5447895506994E-35
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 15B17720739045086.666666666666745.384615384615453.07692307692312.80359406780404E-30
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 165286921239138789.329488103821242.615012106537555.85149313962871.90956073819003E-34
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 1739635075783990.226460071513752.311756935270846.23513870541614.20442722572625E-27
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 1821225647251791.295938104448744.915254237288154.23728813559328.35213158350655E-34
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 195577121279144188.757807078417843.549648162627155.66849100860053.21836172741495E-33
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 26318781531166891.786570743405341.214892227302457.34813847158721.68975552016341E-37
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 2032933967777287.694300518134748.596750369276250.07385524372232.97205717497328E-28
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 2117412731140277.36318407960255.948553054662440.83601286173639.56678900628984E-18
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 22A31739671880389.414694894146944.15041782729855.15320334261843.93357547643516E-33
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 22B28038667773991.610284167794341.358936484490457.01624815361893.12040163864428E-37
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 234937631275141090.425531914893638.666666666666759.8431372549026.22957831868089E-39
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 37518231598177490.078917700112746.996245306633351.50187734668343.68125386891159E-31
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 432147079895183.911671924290240.225563909774458.89724310776942.2686537468804E-33
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 528636965972091.527777777777843.399089529590355.99393019726862.60219138859018E-35
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 64955821093122289.44353518821645.28819762122653.24794144556273.67278895928314E-32
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 76507771437157391.354100445009545.233124565066154.07098121085591.42346954750186E-33
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 85534281002117285.494880546075155.18962075848342.71457085828345.12738299716137E-22
MILWAUKEE COUNTY CITY OF FRANKLIN WARD 95224691003115486.915077989601452.043868394815646.75972083748754.17082445761439E-25
MILWAUKEE COUNTY CITY OF GLENDALE WARD 835617252959289.358108108108167.29678638941432.51417769376181.89068769493298E-17
MILWAUKEE COUNTY CITY OF GLENDALE WARDS 1,79843471363155587.652733118971172.193690388848125.45854732208363.16744713268672E-14
MILWAUKEE COUNTY CITY OF GLENDALE WARDS 2,8S712212935107686.895910780669276.149732620320822.67379679144392.28904788740795E-12
MILWAUKEE COUNTY CITY OF GLENDALE WARDS 3,910534591546176487.641723356009168.11125485122929.68952134540756.14813246126453E-16
MILWAUKEE COUNTY CITY OF GLENDALE WARDS 4,1011724681657185489.374325782092870.730235365117728.24381412190716.02930527494358E-16
MILWAUKEE COUNTY CITY OF GLENDALE WARDS 5,119343571312148088.648648648648771.189024390243927.21036585365852.86273338591949E-15
MILWAUKEE COUNTY CITY OF GLENDALE WARDS 6,128662701153134985.47071905114975.108412836079823.4171725932357.42416867151683E-12
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 15764381035126182.077716098334655.652173913043542.31884057971016.75719273960832E-20
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 105655181102129784.965304548959151.270417422867547.0054446460981.54815447380789E-24
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 116196891323145790.803019903912246.787603930461152.07860922146647.49110216197986E-32
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 126097671392157688.324873096446743.7555.10057471264379.38170717809966E-33
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 1335231767578086.538461538461552.148148148148146.9629629629638.46101282137081E-25
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 14469428910112480.960854092526751.538461538461547.0329670329672.5923776457702E-22
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 15431467912108683.977900552486247.258771929824651.20614035087723.64452002818065E-27
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 1618220038547581.052631578947447.272727272727351.94805194805191.03185649345929E-25
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 1746134681599282.157258064516156.564417177914142.45398773006132.52239916433965E-19
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 18426448888101487.573964497041447.97297297297350.45045045045041.11207447361166E-28
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 197645251298150886.074270557029258.859784283513140.44684129429895.85375850169128E-20
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 2445447903106884.550561797752849.280177187153949.50166112956817.65010167785277E-26
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 206856651364159085.786163522012650.219941348973648.75366568914968.26628576102177E-26
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 21450372838102781.596884128529753.699284009546544.39140811455855.02825498303287E-21
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 3495343852107179.551820728291358.098591549295840.25821596244133.60103037564101E-17
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 4516306832110075.636363636363662.019230769230836.77884615384621.96038822277719E-13
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 5520439972121180.264244426094153.497942386831345.16460905349791.42770280944536E-20
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 6448530996114387.139107611548644.979919678714953.21285140562256.42641640780174E-31
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 76296431296151885.375494071146248.533950617283949.61419753086426.70730734893469E-27
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 86125041127136182.806759735488654.303460514640644.72049689440993.49143853336436E-21
MILWAUKEE COUNTY CITY OF GREENFIELD WARD 95504991065124485.610932475884351.643192488262946.85446009389671.26351449266701E-24
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 1075881060490966.446644664466497.35099337748341.655629139072850.00607290997487753
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 1163951040766361.387631975867397.0515970515972.457002457002460.00442900875815082
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 1302677835292837.931034482758675.852272727272722.15909090909095.06449448879178E-16
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 13212553591633196982.93550025393676.85241886099221.98407838334356.22621280143243E-10
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 144334634455961.538461538461597.09302325581391.744186046511630.0045609717682438
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 1553521876892183.387622149837169.661458333333328.38541666666678.50493764715297E-13
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 18617956962541327177.682665851421670.641479732388827.39079102715476.8232933072707E-10
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 191399141550120445.681063122923672.545454545454525.63636363636363.99914771473777E-12
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 20557219779296582.072538860103672.222222222222224.87373737373744.24373565136365E-11
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 20647916365475786.393659180977673.241590214067324.92354740061164.72113232055249E-13
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 20744627073092878.663793103448361.095890410958936.9863013698635.36175276901475E-15
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 208512302834102781.20740019474261.390887290167936.211031175066.79004252066778E-16
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 20945329576290784.01323042998959.448818897637838.71391076115491.95546986299735E-18
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 21035531568992174.809989142236751.523947750362845.71843251088534.27579491035909E-20
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 21146128577099877.154308617234559.870129870129937.0129870129873.56231589937219E-15
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 212514310842112374.977738201246761.045130641330236.81710213776728.4094687651029E-14
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 213569294883115576.450216450216464.439411098527733.29558323895812.2623703277218E-12
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 2438522151083123887.479806138933878.670360110803319.85226223453375.41723117940624E-12
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 24555613570282884.782608695652279.202279202279219.23076923076923.00331841376544E-10
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 26133717452363282.75316455696264.435946462715133.26959847036335.82555622850465E-15
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 2626653881064130581.532567049808462.536.46616541353382.04151668899336E-15
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 26337419957975776.486129458388464.59412780656334.36960276338512.65171157727609E-12
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 2646764851185144482.063711911357357.046413502109740.92827004219415.79902239092725E-19
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 26535126762877680.927835051546455.891719745222942.5159235668793.34925682107936E-19
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 26634036072190080.111111111111147.156726768377349.93065187239942.13915754083083E-25
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 26736228565779282.954545454545555.098934550989343.378995433791.04876863667821E-20
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 2687986341452178881.208053691275254.958677685950443.663911845735.79255390176922E-20
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 269451388857107679.646840148698952.625437572928845.27421236872816.07513589006184E-21
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 27041137679999280.544354838709751.439299123904947.05882352941183.33979654311459E-22
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 2718176341472183480.261723009814655.502717391304343.0706521739133.58022181504136E-19
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 2725125671096126686.571879936808946.715328467153351.73357664233584.28503366875072E-29
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 27331329061071984.840055632823451.311475409836147.54098360655741.95369959606737E-24
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 27429629761076379.947575360419448.524590163934448.68852459016393.26718700327756E-24
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 2757726331423185476.752966558791854.251581166549544.48348559381591.05215494863984E-18
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 2766726001295152784.806810740013151.891891891891946.33204633204635.54486888719382E-24
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 2776886021320164080.487804878048852.121212121212145.60606060606061.1395279941763E-21
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 27837035974091680.78602620087345048.51351351351352.07680960722687E-23
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 2795734451040126582.213438735177955.096153846153942.78846153846152.42738130289664E-20
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 28011244811630206578.934624697336668.957055214723929.50920245398774.4239076774363E-11
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 28147426574795778.056426332288463.453815261044235.4752342704151.89778550535121E-13
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 28347325273698374.872838250254364.266304347826134.23913043478265.45437704403475E-12
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 28627713642058072.413793103448365.952380952380932.38095238095241.56448201263501E-10
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 28733114148359780.904522613065368.530020703933729.19254658385094.2570324619449E-12
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 2886733861077135079.777777777777862.488393686165335.84029712163421.19076439246385E-14
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 29242819863279779.29736511919767.721518987341831.32911392405068.75090412574107E-12
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 29349527778995382.79118572927662.737642585551335.10773130544996.82907019712108E-16
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 29441819162173384.720327421555367.310789049919530.75684380032211.43489007810167E-14
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 29554119175093180.558539205155772.133333333333325.46666666666671.9406997206457E-10
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 296671288982115485.095320623916868.329938900203729.32790224032592.61839983551383E-14
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 297637197849102183.153770812928575.029446407538323.20376914016491.26537229672712E-10
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 29854216272385684.462616822429974.965421853388722.40663900414942.44713694663658E-11
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 299653249921108185.198889916743870.901194353963127.03583061889252.92696461989792E-13
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 3009672241215141086.170212765957479.588477366255118.43621399176956.00326630881646E-11
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 3017693611153135984.841795437821966.695576756287931.30962705984396.25191697293189E-15
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 30247630979295183.280757097791860.101010101010139.01515151515151.17316695988034E-17
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 3037224291172136585.860805860805961.604095563139936.60409556313993.38458923045215E-18
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 304531379928116579.65665236051557.219827586206940.84051724137938.90270006142794E-18
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 305567344932115980.414150129421960.836909871244636.90987124463527.29125476826321E-16
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 30647621570093175.1879699248126830.71428571428573.05481514364101E-10
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 30748630280298681.338742393509160.598503740648437.65586034912722.04179924025003E-16
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 3096454531114137880.841799709724257.899461400359140.66427289048477.56341300405146E-18
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 31136827765684777.449822904368456.097560975609842.22560975609761.12321636456187E-17
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 312553389950107788.207985143918358.210526315789540.94736842105261.07820265316607E-21
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 3139507621743218279.880843263061454.503729202524443.71772805507751.06521933847579E-19
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 31434732068081283.74384236453251.029411764705947.05882352941184.70010708286927E-24
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 315466436916160457.107231920199550.873362445414847.59825327510924.13471102377506E-20
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 31637337075092581.081081081081149.733333333333349.33333333333339.49352292125111E-24
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 317533352901108782.888684452621959.156492785793639.06770255271924.96013279980341E-18
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 3313246842039251081.235059760956264.933791074055933.54585581167245.60180949248076E-14
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 8138423063277981.129653401797260.759493670886136.39240506329113.1634316099815E-16
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 8252830184397586.461538461538562.633451957295435.705812574145.64360612254358E-18
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 836623231009122282.56955810147365.60951437066432.011892963332.86383247830138E-14
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 8446522471086781.891580161476465.492957746478931.54929577464795.33119079644663E-14
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 85623302945114682.460732984293265.925925925925931.9576719576724.65866813999447E-14
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 86629274926111083.423423423423467.9265658747329.58963282937371.37729902611045E-13
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 8743415059372981.344307270233273.187183811129925.29510961214172.15106739253755E-10
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 8860518380496483.40248962655675.248756218905522.76119402985071.11543465562254E-10
MILWAUKEE COUNTY CITY OF MILWAUKEE WARD 9349517067679085.569620253164673.224852071005925.14792899408281.42556748420486E-12
MILWAUKEE COUNTY CITY OF OAK CREEK WARDS 1-3170117443522400987.85233225243248.296422487223249.51731970471321.34995380021904E-28
MILWAUKEE COUNTY CITY OF OAK CREEK WARDS 10-12159620903758426888.050609184629842.469398616285355.61468866418311.00089661325203E-33
MILWAUKEE COUNTY CITY OF OAK CREEK WARDS 13-15155920563664407589.914110429447942.549126637554656.11353711790396.55292766071753E-35
MILWAUKEE COUNTY CITY OF OAK CREEK WARDS 16-19156513072929352183.186594717409853.431205189484544.62273813588265.40429558312339E-22
MILWAUKEE COUNTY CITY OF OAK CREEK WARDS 4-6177716073453408784.487399070222751.462496379959546.53924123950193.97596480799759E-24
MILWAUKEE COUNTY CITY OF OAK CREEK WARDS 7-9165217583461395487.531613555892847.73186940190750.79456804391797.52545559662631E-29
MILWAUKEE COUNTY CITY OF SOUTH MILWAUKEE WARDS 1-4150212522824334884.348864994026353.186968838526944.33427762039668.79048436758186E-23
MILWAUKEE COUNTY CITY OF SOUTH MILWAUKEE WARDS 13-16135413452753330383.348471086890749.182709771158748.85579367962222.79916556081515E-25
MILWAUKEE COUNTY CITY OF SOUTH MILWAUKEE WARDS 5-8124011792464301381.778957849319650.324675324675347.8490259740261.3006965302369E-23
MILWAUKEE COUNTY CITY OF SOUTH MILWAUKEE WARDS 9-12154315703154367985.729817885294948.922003804692549.77805960684848.55077535471153E-27
MILWAUKEE COUNTY CITY OF ST. FRANCIS WARDS 1-49666881688202283.481701285855657.227488151658840.75829383886261.48833787683868E-19
MILWAUKEE COUNTY CITY OF ST. FRANCIS WARDS 5-810457421818211186.12032212221757.480748074807540.81408140814087.37392790023734E-21
MILWAUKEE COUNTY CITY OF ST. FRANCIS WARDS 9-1213708072206254186.816214088941462.103354487760736.58204895738891.73670652459223E-18
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 19353521313146189.869952087611271.210967250571226.80883472962684.29199717483575E-16
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 1010093791425168284.720570749108270.807017543859726.59649122807024.96976046265056E-13
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 119423701335154186.632057105775570.56179775280927.71535580524343.04969908063255E-14
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 1210095401578174390.533562822719463.941698352344734.22053231939165.90182535799617E-20
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 1353817573485286.15023474178473.297002724795623.8419618528616.91680405682294E-13
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 1410193331386159986.679174484052573.520923520923524.0259740259744.00745124345971E-13
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 1511283251487170187.41916519694375.85743106926721.85608607935448.72613807561488E-13
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 1610564891590175390.701654306902566.415094339622630.75471698113218.10244077319936E-19
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 177965271349148590.841750841750959.00667160859939.06597479614535.17912850085271E-23
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 187563691137134584.535315985130166.49076517150432.45382585751987.35436406286319E-15
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 198364551315152786.116568434839663.57414448669234.60076045627382.95934324139749E-17
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 210062981321150587.774086378737576.154428463285422.5586676760036.45221760442866E-13
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 209986861716199086.231155778894558.158508158508239.976689976691.71666108579506E-20
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 216834591167135086.444444444444458.526135389888639.33161953727512.17866869555251E-20
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 228594841377155288.724226804123762.381989832970235.14887436456061.49463701960189E-19
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 236685191215138487.789017341040554.979423868312842.71604938271611.47783902838351E-23
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 247023381058127682.915360501567466.35160680529331.94706994328924.48324575884219E-14
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 39814011404162586.469.871794871794928.56125356125362.16209341470747E-14
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 412645891896211689.603024574669266.666666666666731.06540084388196.41887343588786E-18
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 57473331095133182.268970698722868.219178082191830.41095890410967.11539536094584E-13
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 67332671019121384.006595218466671.933267909715426.20215897939163.42786865328096E-12
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 710205091564177788.013505908835165.217391304347832.54475703324811.42365789266778E-17
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 841427669885381.828839390386959.312320916905439.5415472779372.03410688133861E-17
MILWAUKEE COUNTY CITY OF WAUWATOSA WARD 97836311447169885.217903415783354.111955770559843.60746371803731.31727251710136E-22
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 1552302875116575.10729613733963.085714285714334.51428571428571.09341656007839E-12
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 106714141107145376.1871988988360.614272809394837.39837398373982.05397477403839E-14
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 117026791402172681.228273464658250.071326676176948.43081312410841.49191405531741E-23
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 125826631265155481.402831402831446.007905138339952.41106719367596.25448622497098E-27
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 138438291715201285.238568588469249.154518950437348.33819241982512.50898219645981E-26
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 14531355906120475.249169435215958.609271523178839.18322295805742.38701616746422E-15
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 15527434987126478.085443037974753.394123606889643.97163120567388.88322217068542E-20
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 16496473996124979.743795036028849.799196787148647.48995983935744.05804724716096E-23
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 176806411348166880.815347721822550.445103857566847.55192878338284.45060932552017E-23
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 187547711550188282.359192348565448.645161290322649.7419354838713.27839997095381E-25
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 197366491413170782.776801405975452.087756546355345.9306440198169.1547815357996E-23
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 28383651223161975.540457072266868.520032706459529.84464431725274.15549638821068E-10
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 205594531025124282.528180354267354.536585365853744.19512195121956.98704542708123E-21
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 216835721279160979.490366687383553.401094605160344.72243940578582.56434663338589E-20
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 22566410990128876.863354037267157.171717171717241.41414141414149.11106723907263E-17
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 236867301440173982.806210465784947.638888888888950.69444444444443.01938597867455E-26
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 24552357922119976.897414512093459.869848156182238.72017353579184.34927337209287E-15
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 256546861365157986.447118429385747.912087912087950.25641025641034.94212313828082E-28
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 3523280828110375.067996373526763.164251207729533.81642512077291.2380705237555E-12
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 47144881225156578.274760383386658.285714285714339.83673469387761.49370039073485E-16
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 55854011000127678.369905956112858.540.11.87650274487038E-16
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 6490399916123074.471544715447253.493449781659443.55895196506551.46418702181846E-18
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 76754701175153476.597131681877457.4468085106383401.68103981731446E-16
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 8565337925123175.142160844841661.081081081081136.43243243243247.92817234717319E-14
MILWAUKEE COUNTY CITY OF WEST ALLIS WARD 97355231280165377.434966727162757.42187540.8593758.44200178825207E-17
MILWAUKEE COUNTY VILLAGE OF BAYSIDE WARD 550819270677990.629011553273471.954674220963227.19546742209632.44456563873148E-16
MILWAUKEE COUNTY VILLAGE OF BAYSIDE WARDS 1,37193231049124284.460547504025868.541468064823630.7912297426127.3531014466122E-14
MILWAUKEE COUNTY VILLAGE OF BAYSIDE WARDS 1S,3S4724717594.666666666666766.197183098591633.80281690140845.20072614807201E-22
MILWAUKEE COUNTY VILLAGE OF BAYSIDE WARDS 2,49113271254141688.559322033898372.647527910685826.07655502392341.21537753246468E-14
MILWAUKEE COUNTY VILLAGE OF BROWN DEER WARDS 1-218915532488294984.367582231264876.004823151125422.22668810289396.03006145464191E-11
MILWAUKEE COUNTY VILLAGE OF BROWN DEER WARDS 3-416847722490289286.099585062240767.630522088353431.0040160642573.2746666274357E-15
MILWAUKEE COUNTY VILLAGE OF BROWN DEER WARDS 5-617496862477292584.683760683760770.609608397254727.69479208720234.32055702907867E-13
MILWAUKEE COUNTY VILLAGE OF FOX POINT WARDS 1-415336412201246889.181523500810469.650159018627929.12312585188552.8694532937401E-16
MILWAUKEE COUNTY VILLAGE OF FOX POINT WARDS 5-919597882786309889.928986442866470.315865039483128.28427853553481.67529969347659E-16
MILWAUKEE COUNTY VILLAGE OF GREENDALE WARDS 1-28249161765195490.327533265097246.68555240793251.89801699716711.35248528592402E-31
MILWAUKEE COUNTY VILLAGE OF GREENDALE WARDS 3-410619042007232486.359724612736752.864972595914345.04235176880923.63389937076315E-24
MILWAUKEE COUNTY VILLAGE OF GREENDALE WARDS 5-69128451782203087.783251231527151.178451178451247.41863075196412.67310357712138E-26
MILWAUKEE COUNTY VILLAGE OF GREENDALE WARDS 7-89008241756199088.241206030150751.2528473804146.92482915717541.53793346484194E-26
MILWAUKEE COUNTY VILLAGE OF GREENDALE WARDS 9-10108710242127240988.29389788293951.104842501175448.1429243065351.0979100727427E-26
MILWAUKEE COUNTY VILLAGE OF HALES CORNERS WARDS 1-37268781637187787.213638785295744.349419670128353.63469761759321.63033371187735E-31
MILWAUKEE COUNTY VILLAGE OF HALES CORNERS WARDS 4-67518291603186086.182795698924746.84965689332551.7155333749229.50129837887944E-29
MILWAUKEE COUNTY VILLAGE OF HALES CORNERS WARDS 7-97637721552176388.031764038570649.162371134020649.74226804123715.09051745202475E-28
MILWAUKEE COUNTY VILLAGE OF RIVER HILLS WARDS 1-37155351259141389.10120311394256.79110405083442.49404289118353.34151147982707E-23
MILWAUKEE COUNTY VILLAGE OF SHOREWOOD WARDS 1-428516063509407986.025986761461181.248218865773717.26987745796521.82789251970963E-10
MILWAUKEE COUNTY VILLAGE OF SHOREWOOD WARDS 5-824604352939336587.340267459138283.70193943518214.80095270500179.12181429933463E-11
MILWAUKEE COUNTY VILLAGE OF SHOREWOOD WARDS 9-1223894192845323687.917181705809683.971880492091414.72759226713534.38025974823043E-11
MILWAUKEE COUNTY VILLAGE OF WEST MILWAUKEE WARDS 1-2,5519249781107572.651162790697766.453265044814331.88220230473752.45436618393263E-10
MILWAUKEE COUNTY VILLAGE OF WEST MILWAUKEE WARDS 3-4,6611290920116878.767123287671266.413043478260931.52173913043483.38065145202773E-12
MILWAUKEE COUNTY VILLAGE OF WHITEFISH BAY WARD 12667310997108491.974169741697466.90070210631931.09327983951861.58783909593186E-19
MILWAUKEE COUNTY VILLAGE OF WHITEFISH BAY WARD 761420883394288.428874734607273.709483793517424.96998799519813.64155504598521E-14
MILWAUKEE COUNTY VILLAGE OF WHITEFISH BAY WARDS 1-210445501614178790.318970341354264.684014869888534.07682775712522.05819451025194E-19
MILWAUKEE COUNTY VILLAGE OF WHITEFISH BAY WARDS 3-410524371508167490.083632019115969.761273209549128.97877984084887.59867496717096E-17
MILWAUKEE COUNTY VILLAGE OF WHITEFISH BAY WARDS 5-611485011668187588.9668.824940047961630.03597122302161.76565509275726E-16
MILWAUKEE COUNTY VILLAGE OF WHITEFISH BAY WARDS 8,1013444831844206489.341085271317872.88503253796126.19305856832974.439862753817E-15
MILWAUKEE COUNTY VILLAGE OF WHITEFISH BAY WARDS 9,1112113781615187186.317477284874474.98452012383923.4055727554182.1467920231762E-12
MONROE COUNTY VILLAGE OF WILTON WARD 112312224731179.421221864951849.797570850202449.39271255060731.20704010552853E-10
OUTAGAMIE COUNTY CITY OF APPLETON WARD 8663144820141557.950530035335780.853658536585417.56097560975611.45780801269311E-21
OZAUKEE COUNTY TOWN OF FREDONIA WARDS 1-428410731380154289.494163424124520.579710144927577.75362318840581.38655200184393E-14
OZAUKEE COUNTY VILLAGE OF BAYSIDE WARD 65933939498.93617021276663.440860215053835.48387096774192.00129596830969E-11
OZAUKEE COUNTY VILLAGE OF NEWBURG WARD 3946556091.666666666666716.363636363636483.63636363636365.63503296502046E-19
PIERCE COUNTY CITY OF RIVER FALLS WARDS 12-149327241712222377.013045434098154.439252336448642.28971962616825.61509915169131E-11
PIERCE COUNTY CITY OF RIVER FALLS WARDS 6-812607702092261380.061232300038360.229445506692236.80688336520085.8496683463879E-13
PIERCE COUNTY CITY OF RIVER FALLS WARDS 9-116655371264192365.73062922516952.610759493670942.48417721518991.09797839673096E-20
POLK COUNTY CITY OF ST. CROIX FALLS WARDS 1-46356211278156081.923076923076949.687010954616648.59154929577464.87553890759147E-10
PORTAGE COUNTY CITY OF STEVENS POINT WARDS 1-37183061065143574.216027874564567.417840375586928.73239436619725.75731642041891E-16
PORTAGE COUNTY CITY OF STEVENS POINT WARDS 10-127073751113140479.273504273504363.522012578616333.69272237196773.13559487680873E-11
PORTAGE COUNTY CITY OF STEVENS POINT WARDS 13-158203931252154980.826339573918765.495207667731631.38977635782751.05043079569372E-11
PORTAGE COUNTY CITY OF STEVENS POINT WARDS 31-33474244747111267.176258992805863.453815261044232.66398929049533.85556315207787E-19
PORTAGE COUNTY CITY OF STEVENS POINT WARDS 4-6569245841124867.387820512820567.657550535077329.13198573127232.78068480164296E-21
PORTAGE COUNTY CITY OF STEVENS POINT WARDS 7-9512207743114964.664926022628468.909825033647427.86002691790041.19090420839269E-24
RACINE COUNTY CITY OF RACINE WARD 183253536359660.906040268456489.53168044077149.641873278236911.61620200534854E-18
RACINE COUNTY CITY OF RACINE WARD 192694732152261.494252873563283.800623052959514.64174454828661.45532182383773E-15
RACINE COUNTY CITY OF RACINE WARD 253698644100763.952333664349583.229813664596315.21739130434781.42908976350886E-13
RACINE COUNTY CITY OF RACINE WARD 45164956985966.239813736903490.68541300527248.61159929701232.22596252082422E-15
RACINE COUNTY CITY OF RACINE WARD 54144346366469.728915662650689.41684665226789.287257019438456.42199163428323E-13
RACINE COUNTY CITY OF RACINE WARD 73857447068468.713450292397781.914893617021315.74468085106382.65763243490565E-10
RACINE COUNTY CITY OF RACINE WARD 849210660488768.094701240135381.456953642384117.54966887417221.8659463263179E-10
ROCK COUNTY CITY OF BELOIT WARD 133507643866066.363636363636479.908675799086817.3515981735163.86795309941425E-11
ROCK COUNTY CITY OF BELOIT WARD 1442212155284465.402843601895776.449275362318821.92028985507255.01839456532688E-10
ROCK COUNTY CITY OF BELOIT WARD 16454117579118848.737373737373778.411053540587220.20725388601045.60799598953891E-24
ROCK COUNTY CITY OF BELOIT WARD 8348437259.722222222222279.069767441860518.60465116279071.58318773614765E-14
SHAWANO COUNTY TOWN OF BARTELME WARD 12608835445477.973568281938373.446327683615824.85875706214698.27419151174227E-30
SHAWANO COUNTY TOWN OF RED SPRINGS WARDS 1-232821054062885.987261146496860.740740740740738.88888888888899.12515507152146E-16
ST. CROIX COUNTY CITY OF HUDSON WARDS 1-25535381117140279.671897289586349.507609668755648.164726947183.01168489100185E-10
ST. CROIX COUNTY CITY OF HUDSON WARDS 9-108235121371162184.577421344848960.029175784099237.3450036469734.66935435278649E-13
TAYLOR COUNTY TOWN OF MAPLEHURST WARD 136179218199109.54773869346716.513761467889982.11009174311931.08923188875317E-14
TAYLOR COUNTY TOWN OF PERSHING WARD 13452881008838.636363636363659.09090909090914.20619321566663E-10
VILAS COUNTY TOWN OF LAC DU FLAMBEAU WARDS 1-79776341624219174.121405750798760.160098522167539.03940886699512.71781088739366E-22
WALWORTH COUNTY CITY OF WHITEWATER WARD 714711126759744.723618090452355.056179775280941.57303370786524.20346919413067E-28
WALWORTH COUNTY CITY OF WHITEWATER WARD 91949629657651.388888888888965.540540540540532.43243243243241.08258816705731E-25
WALWORTH COUNTY CITY OF WHITEWATER WARDS 3-4547305875124270.45088566827762.514285714285734.85714285714291.21363190304917E-11
WALWORTH COUNTY CITY OF WHITEWATER WARDS 8,13923512925650.39062571.317829457364327.13178294573646.78349828881846E-30
WAUKESHA COUNTY CITY OF WAUKESHA WARD 2533029064186873.847926267281151.482059282371345.24180967238695.93869651342477E-10
WAUKESHA COUNTY CITY OF WAUKESHA WARD 2753328911974.789915966386659.550561797752835.95505617977535.34798400477303E-12
WAUKESHA COUNTY VILLAGE OF MERTON WARDS 5-62071929497.872340425531921.739130434782677.17391304347834.6967624756401E-11
WAUPACA COUNTY CITY OF WAUPACA WARDS 1-13140915573030367682.426550598476646.501650165016551.38613861386141.098732231727E-10
WINNEBAGO COUNTY CITY OF OSHKOSH WARD 319313733990337.541528239202756.932153392330440.41297935103241.12053944116867E-30
WINNEBAGO COUNTY CITY OF OSHKOSH WARD 4312203525102851.070038910505859.428571428571438.66666666666676.31136222801884E-17
WOOD COUNTY CITY OF MARSHFIELD WARDS 4,145715531138134284.798807749627450.175746924428848.59402460456946.46363645172154E-10

Per County Election Fingerprints

Categories
Election Data Analysis Election Forensics Election Integrity Interesting programming technical

New WI 2020 Election Fingerprints

Previously (see here, and here) I built a set of Election Fingerprints including WI that was based on the County data that I extracted from the NYT/Edison research election tracker, which was the best data that I had available at the time. While the results did have some interesting features, there wasn’t really enough data points to make any sort of inference one way or the other. Well … this last weekend (07/30/21) I received a dataset that had all of the vote counts and registered voters by Ward Grouping in the state, which is a much higher fidelity dataset than I had been working with.

Update 8/4/21: Not 24 hours after posting, my data source for the WI data has discovered some more accurate voter registration numbers for me to use which more accurately account for same day registrations. (The one I used was dated as of 12/1/20) I will be updating my analysis ASAP. The updated plots and analysis is posted here, but I’ll keep this post up for historic purposes.

The original image I created is replicated below for reference. As you can see, its a very blocky histogram created from the County level data points. There is a main lobe at about 90% turnout and 40% for Biden with some kurtotic streaking up and to the left with another grouping of Counties. While those features are indeed irregular and interesting, due to the coarse nature of the original per County data, it was plausible that the shape is just due to sampling issues so I didn’t flag WI as one of my issue states.

The data set I received this weekend however, is a drastic improvement in fidelity. It’s not without its data quality issues, as there was a good bit of data normalization needing to be done to get the vote tally data per ward group and the voter registration data per ward to marry up. Besides some different spellings, abbreviations and shorthand that needed to be rectified between the dataset, the registration data had any municipality that would straddle county lines labeled similar to the following format: “MULTIPLE COUNTIES, CITY OF NOWHERESVILLE, WARD 5A” along with a registered voter count. The vote count tally data had grouped multiple wards into different groupings such as “SOMEWHERE COUNTY, CITY OF NOWHERESVILLE, WARDS 1-3,4,5A,6C,13-15” along with a set of vote totals for Biden, Trump and TotalVotesCast. So I had to go through the files by hand and group each files corresponding data with the smallest size groupings as possible. There also seems to be a few (not many, though) Wards that are not accounted for by the Vote count result as well and others that are missing from the registration data. That being said, we can see much more detail in the generated statewide fingerprint (below), which also matches the “low-res” version that I had done previously. (Hooray … my results are consistent!)

We see what looks like two (or even three) superimposed lobes around the 90% turnout and 40% per Biden bin, which is consistent with my earlier low-res version, and we have a lot more detail as to the upward kurtotic smear off the main distribution. There also are a few Ward Groupings that have exceptionally high % for Biden (rarely, if ever, does a candidate receive near 100% vote share), and there are Ward Groupings that are near/over the 100% turnout marker, with the addition that some of those are ALSO either 100% Biden or 0% Biden (all big red flags)!

As discussed in the National Academy of Sciences paper that all of this work is based on, an idealized Election Fingerprint should look like a 2D Gaussian (or a multi-variate normal distribution). Or maybe, in an extremely divided populace, 2 overlapping Gaussian distributions. Deviations from this are, by definition, irregular and an indication that there might be an issue with the election. Distinct linear or non-linear features sloping away from the central lobes(s) could indicate voter manipulation or “ballot stuffing”; isolated regions at high turnout +/or very high vote percentage for one candidate could be an indication of extreme manipulation or vote substitution. Now, its true that no real Election Fingerprint will look perfectly Gaussian due to the realities of how elections operate, data errors, etc … but they should at least be close!

So that moves the needle for me as to considering WI as a problematic state based off Election Fingerprint generation. I would definitely say now that I think there are concrete signs of election irregularity in WI that deserve to be rigorously investigated. I can’t tell you if the shape of the above plot is due to incompetence, or outright fraud … but there is definitely something wrong!

Per County Data

Since I now have all of this rich data to play with … It’d be a shame to only do things statewide! I also produced fingerprints for every single county. One note here is that there is one plot that is the group of “MULTIPLE COUNTIES” that I had mentioned above due to the way the source registration data was organized and labelled. Some of the counties, look actually pretty good with nice, localized, near-gaussian distributions. Some are just an absolute mess!

My list of “interesting” counties:

ASHLAND, BAYFIELD, BROWN, CALUMET, CHIPPEWA, CLARK, DANE, DOGE, DOOR, DOUGLAS, DUNN, EAU CLAIRE, FOREST, GRANT, IOWA, JACKSON, JUNEAU, KENOSHA, KEWAUNEE, LACROSSE, LAFAYETTE, MARATHON, MILWAULKEE, MONROE, ONEIDA, OUTGAMIE, OZAUKEE, PIERCE, PORTAGE, RACINE, RICHLAND, ROCK, RUSK, SAULK, SHAWANO, SHEBOYGEN, St. CROIX, TAYLOR, VILAS, WASHINGTON, WAUKESHA, WAUPACA, WINNEBAGO (43/72 WI Counties)

Of that list, I’d label the following as “VERY interesting”:

BAYFIELD, BROWN, CALUMET, DANE, DOOR, EAU CLAIRE, KENOSHA, LACROSSE, LAFAYETTE, MARATHON, MILWAULKEE, OUTGAMIE, OZAUKEE, PORTAGE, RACINE, ROCK, SAULK, SHAWANO, SHEBOYGEN, St. CROIX, VILAS, WAUKESHA, WINNEBAGO (23/72 WI Counties)

The Election Fingerprints of all of the counties (plus the “MULTIPLE COUNTIES” super-group) are listed below:

Here is the link to the consolidated dataset used to generate all of the graphics on this page.

Categories
Election Data Analysis Election Forensics Election Integrity Interesting programming technical

(Another) Interesting View of VA 2020 Election Data

In answering some questions and messages I’ve been getting on my election analysis work, I took a minute and simply plotted the log-log plot of all of the absolute vote counts for Biden Vs. Trump for all precincts in the state. Real physical precincts are colored blue. Central absentee counting precincts are colored red. The real precincts seem to look about like I would expect, however the central absentee precincts fall fairly neatly on the logarithmic line, which is curious to me.

What do I think it means? Not quite sure yet as I’m still noodling things over … but it is very interesting, to say the least.

Categories
Election Data Analysis Election Forensics Election Integrity Ginsu Science Interesting programming technical Uncategorized

I have been censored by Big Tech for doing independent election research and analysis

Facebook has put me in “FB Jail” until Feb 7 for, I can only guess, my posting links to my independent analysis of election data and results. I’m assuming a Twitter ban will be coming shortly.

If the totalitarian fact checkers at facebook think the countless hours I have spent collating and documenting the election irregularities of the 2020 election is incorrect I invite them to please show me where I got the math wrong. I’ve shown my work, provided my sources and methodology. I’ve even made sure to not erase my errors and flaws as I found them but to acknowledge them and update my posts with corrections as I did the work in real time. I’ll happily debate and defend my analysis and the theory behind it, and if you can show me where I’m wrong or have mis-represented anything I will gladly correct it. This censorship by big tech is cowardly, totalitarian and demonstrably un-American.

From Thomas Paine: ‘He that would make his own liberty secure must guard even his enemy from oppression; for if he violates this duty he establishes a precedent that will reach to himself.’

The solution to bad ideas, or ideas that you do not agree with is not to try and silence the speaker, but to combat them with better ideas.

Categories
Election Data Analysis Election Forensics Election Integrity Interesting programming technical

A Midnight Spike in VA, and generation of Election Fingerprints over time.

BLUF: Discovered 55,196 vote spike in Alexandria City absentee ballots with 0 (… as in … zilch, zip, nada) for Trump or Jorgensen sometime between 11:30pm 11/3/2020 and 01:00am 11/4/2020. Generated time series of VA per county election fingerprints, and cumulative vote counts. Data sources: VA Dept of Elections voter registration data by locality file, NYT Edison time series datafeed snapshots from wayback machine.

Introduction:

So I’m still puzzled by the shape of the per county election fingerprint in VA. Multiple scientists I’ve talked to and worked with on this are all scratching their heads as to what would explain the significant structures observed. As a reminder, the election fingerprint “should” look like one (maaaaybe two for a really split electorate) Gaussian lobes, without a lot of smearing, linear features or structures. They will of course not be perfect Gaussians, but we would expect them to be somewhat close. I go into the theory and details of generating these fingerprints here, and the VA per county data is replicated below as well. It does not look Gaussian at all and is by definition an “irregularity” in the election data.

For reference I show the MN plot below as well, which still shows some slight irregularities, but for the most part it looks very clean. It’s got a little bit of kurtotic energy in the tails, but it looks like a pretty well defined 2D Gaussian main lobe otherwise. It looks like it could even have two distribution centers: one distribution center for a large number of the smaller (presumably suburban + rural) localities that didn’t go for Biden, and much fewer (but more populous) larger localities that went just slightly above 50% for Biden. Both distribution centers had about 90% turnout. The MN data makes sense to me, and other data scientists that I’ve shown it too, and it doesn’t set off any blaring alarm bells. The VA data however, remains inexplicable.

So, in trying to decipher what happened in VA, I was interested in taking a look at how the election fingerprints for VA evolved over time. Does the whole structure move fairly uniformly from left to right as more turnout occurs? Does it look Gaussian at any point in the counting process and then shift? In order to attempt to do that I need the per county vote tallies over time and unfortunately I didn’t anticipate needing to do analysis like this before the election, and so I didn’t setup anything to capture the updates to the VA Dept of Elections site or the NYT Edison datafeed. I tried to do an after-the-fact FOIA request, but it has been denied by VA Dept of Elections stating that they do not keep those records.

However … thankfully, the wayback machine does have a few snapshots of the VA datafeed. Not nearly what I would like to be able to make a full sequence to watch how the fingerprint takes shape, but its better than nothing. And while we’re at it, lets keep our eye’s out for individual counties that have large vote swings and also have statistically improbable results for any candidate (> 95%).

The earliest data file I could find on the wayback machine was from 2020-11-04T04:06:57.160Z and shows results through 11:30pm on the 3rd. While thats not ideal, that at least starts us off while Trump was still ahead.

2020-11-04T04:06:57.160Z

We can already see our “boomerang” structure fairly well formed in this initial plot, and I didn’t find any individual counties that had a large update with over 95% Biden. (Now that doesn’t mean such updates didn’t happen before this snapshot, but since my snapshot sampling rate is so low, each update includes more than one set of batch updates, and specific outlier batches might be just getting rolled into the sums.)

2020-11-04T05:34:34.206Z

We can pretty clearly see that just after the last snapshot, right around midnight, there’s obviously some sort of issue that happened with the data, with a couple of really large bumps for Biden that end up getting reversed and reverted. I have no idea if there’s any specific event that this can be correlated to in news reporting, if this is a glitch in the NYT feed, etc. But it looks like this event occurred between the updates to the NYT datafeed that I could find on the wayback machine. So whatever it is that happened, it got baked into the cake already as far as this datafeed snapshot is concerned. (If anyone has the files for these timestamps, please share!)

In addition to that we see that we’ve had a noticeable shift in our fingerprint as it looks like more low-turnout areas have been shifted into the boomerang.

Whats really interesting to me is that there was one locality (Alexandria) that had a large change of 55,196 Biden votes and ZERO for Trump or Jorgensen votes in the near hour and a half since the previous data points. From the data, it looks like these were all absentee votes, which we admittedly expect to be a higher turnout percentage for Biden … but 100% of such a large sample size … c’mon man! According to VA Dept of Elections, the absentee vote in Alexandria broke overall 84.78% (55,940 / 65,985) for Biden and 13.57% (8,951 / 65,985) for Trump. Now we know the underlying distribution is not I.I.D., so we should not expect exactly 13.57% of this batch to have gone for Trump, but we would still expect at the very least a small handful of this batch should have been for Trump. Additionally, this batch of absentee ballots makes up 83.65% of Biden’s total absentee haul, meaning Tump must have received 8,951 / (65,985 – 55,196) = 82.96% of ALL the remaining absentee votes in Alexandria, which also seems pretty unlikely.

2020-11-05T02:45:04.745Z and Beyond

After the previous batch there aren’t any more large outliers at least that I caught. But I only have a few snapshots from the wayback machine to work with. We see the remaining straggler counties start to shift to underneath the “boomerang”. If there was a point in time where the data was looking like a 2D Gaussian, it was before the first snapshot that I was able to find and get my hands on.

Complete Galleries Below:

Categories
Election Data Analysis Election Forensics Election Integrity Interesting programming technical

Excess Absentee Votes in VA

See also my previous election fingerprint blog posts here, and here. There is another, related, discrepancy in the Daily Absentee List data that I document here.

Originally Posted 2020-12-01 10:58:00 (Multiple Updates)

After computing the VA election fingerprints which clearly indicate that more investigation is required into the 2020 VA vote data, I took a look at the official VA daily absentee ballot count file and compared it with the JSON reports from VA dept of elections.  The JSON data provides a summary total of the votes recorded at each virtual absentee precinct, and the daily absentee list (here) gives all of the absentee ballot registrations for each precinct. For each (virtual) absentee precinct in a locality I summed all of the daily absentee numbers from component real precincts in order to compare those numbers with the reported total absentee votes. If everything has been tallied and recorded correctly they should be equal, or at least close.

I then compute the “excess absentee vote” by taking the difference of the number of total absentee votes reported in each virtual absentee precinct minus the cumulative (‘Marked’ + ‘Pre-Processed’ + ‘OnMachine’ + ‘FWAB’) numbers for the absentee precinct.  

I finally plotted the “excess absentee” vote totals vs the % of the absentee precinct vote that went for Biden.  Ideally we would like to see excess absentee vote == 0, meaning that the daily absentee reports and the number of absentee ballots that were counted in each virtual precinct match perfectly.  (I’ll give you a hint … they don’t.)

Outstanding Question: Is there a description document someplace where the BALLOT_STATUS (‘Marked’, etc) meanings are described.  I’m using my best guess as to which categories map to valid ballots, and I’d like to double check that.

Each dot in the plot above represents one of the virtual absentee precincts across the commonwealth. Unsurprisingly, we can clearly see that as the number of excess absentee votes increases more of the absentee vote totals go to Biden. Summing over all of the excess votes, there were 1,334,968 excess absentee votes across VA in the 2020 election using this method. Where did these 1,334,968 votes come from? (See latest updates below)

All source data comes directly from the VA Dept of Elections. My tabulated results are posted below. I welcome any / all peer review and will gladly make my code and compiled datasets available.

Note: Removed incorrect files ... see updates below

Update 2020-12-01 19:30:00

In discussions with The Virginia Project and others that have been churning and burning through this data, there was a question as to weather or not the Daily Absentee Tally dataset (which is available to campaigns by request from the dept of elections), which is what I used above includes the In-Person early vote. My understanding is that the early vote was treated the same as No Excuse Absentee, so early vote numbers *should* be included in the Daily Absentee Tally dataset. But it looks like that might not be true. The JSON files published by VA dept of elections only give the sum totals per candidate per precinct (including absentee precincts), and I used the Daily Absentee Tally dataset to map how many absentee (and early votes) should correspond to each precinct.

However, there is another dataset that I was pointed to that could be a useful comparison and way to compute the missing numbers: that is the Summary Absentee Dataset located here. This dataset DOES contain the In-Person early vote absentee totals (‘ApplicationType’ == ‘In Person’), but it is only generated per absentee counting precinct and not mapped back to the voters physical precinct. It does however break down the Absentee votes per age group, gender, and type of absentee ballot … which is nice … but not what I’m looking for at the moment.

So, we have two datasets, both summaries of the absentee vote numbers with different breakdowns, that *should* sum to give the same totals. Surprise … they don’t. Why? Unknown. The ‘In Person’ vote not being included in the Daily tally does not reconcile the numbers between the two datasets, though.

The plot I generated above, redone with this other dataset is shown below. I’ve included new csv files with the additional data (I’ve labeled as “_V2”). The excess votes per absentee district are similarly computed as the totalVote reported by each absentee precinct (from the JSON files) minus the sum count of all of the Absentee/Mail-In numbers from the Summary Absentee Dataset for that absentee precinct. This new plot does not show positive excess votes, but instead shows negative excess votes, with higher negative excess votes also showing higher Biden total vote percentage. I don’t know which one is correct, but both seem to show high positive / negative excess vote numbers that align with higher Biden percent of the vote. Summing over all of the negative excess votes gives -121,049 votes that are unaccounted for.

One additional question I have is how to tease out the rejection rate of Absentee/Mail-In votes, which might be a contributing factor for both plots. Are the numbers in the Daily or Summary absentee stats files before or after rejection? I have so far not been able to find a dataset that captures the rejection rates for Absentee/Main-In ballots.

Note: Removed incorrect files ... see updates below

Update 2020-12-04 02:00:00

So I’ve been able to confirm that the Daily Absentee List DOES, in fact, contain the In-Person “early” votes. I did this by finding my name and address in the list as I voted early on Oct 26th. The early votes are the ones marked as “On Machine”. I will also note that the date reported for my early vote was incorrectly set to Oct 28th (I voted on the 26th), which is why I had difficulty finding it at first.

So this means that:

  1. My first plot above *should* be correct in its computation of the “excess absentee vote”. Save for a fat finger bug in my code (I’m in the process of double-checking, btw).
  2. The Summary Absentee count does not match the totals from the Daily Absentee List. Why?
  3. If the Daily list is correct, and the excess vote is computed correctly above in the first plot, then how to account for the 1,334,968 excess votes?

Update 2020-12-06 00:05:00

I have revised my previously computed excess vote number of 185,713 to 1,334,968 due to finding some “fat finger” errors, and idiosyncrasies with the DAL file.

Yes, I know … thats a really big number! I’m going back over my code again to see where / if I screwed something up. I will continue to update if I find anything else.

I’ve also taken the time to clean up the plots, both with and without annotations as to which precincts were the most egregious offenders.

Update 2020-12-10 23:12:00

Happy to report that I found a logical bug in my code.  I was subtracting PreProcessed ballots when I should have been adding when computing the excess vote with the DAL data (D’Oh!).  It’s a simple bug, but produces a big difference.  Result is a much smaller order of magnitude difference in the excess vote numbers, and a much more believable excess vote tally.
This line of code:

>> abCntVotes(j) = tdata.marked(j) + tdata.onMachine(j) - tdata.preProcessed(j) + tdata.fwab(j) ;

Should have read:  

>> abCntVotes(j) = tdata.marked(j) + tdata.onMachine(j) + tdata.preProcessed(j) + tdata.fwab(j) ;

That’s the good news.

The first bit of bad news is that the Summary Absentee List (SAL) still doesn’t make much sense, as discussed in my 2020-12-01 update above.  The other bad news is there are two absentee precincts that still stick out like a sore thumb from the DAL derived excess vote numbers. Guess which ones they are … PRINCE WILLIAM COUNTY (11) and PRINCE WILLIAM COUNTY (1)!  PWC district 1 and 11 are both waaay outside the standard deviation on the plot below.  Another curious fact is that we see the deviation on the Biden precincts (blue) looks markedly higher than the deviation in the Trump precincts (red)

Now if we look at the summary totals of the PWC absentee precincts we see that the sum of the negative excess absentee counts of district 1 and 10, are almost a perfect complement of the district 11 excess count (far right column).  That’s also curious.  By itself I’d call that just a coincidence, but combined with the fact that PWC 11 and 01 are also so outside the general trends of all other precincts in the plot above that gets my worry beads out.

Per discussion with PWC staff, there was apparently an error in reporting election data that got caught and corrected where all absentee votes were being sent to the district 01 absentee precinct, so this might be an artifact of that issue.

Additionally, and this is something we see in all of the precinct data and in the JSON data itself.  The JSON data files directly report the Trump, Jorgensen and Biden vote totals, as well as the ‘totalVotes’ numbers. The ‘sumVotes’ column below is the sum of the Trump, Jorgensen and Biden votes which should equal the ‘totalVotes’ column, but it doesn’t.  It’s not usually a dramatic difference, but its a difference all the same.

Again, per discussion with PWC staff, the ‘totalVotes’ numbers reported by the Dept. of Elections JSON data feed includes items such as overvotes / undervotes / unmarked ballots, which count for turnout reasons, but don’t get attributed to a specific candidate.

localityStrprecinctStrNregDonald J. TrumpJo JorgensenJoseph R. BidensumVotestotalVotesissuedmarkedonMachinecancelleddeletedfwablatenotIssuedpreProcessedprovisionalunmarkedabsenteeVotesSumexcessAbsenteeVotes
PRINCE WILLIAM COUNTY# AB – Central Absentee Precinct (01)1154752272078146939704407072125903371471430610662032144909172025-1304
PRINCE WILLIAM COUNTY# AB – Central Absentee Precinct (10)4538310588443213713240232525968144322543029541400884214232842-317
PRINCE WILLIAM COUNTY# AB – Central Absentee Precinct (11)106455195797824604066401666833303322840443056265200213380111650611622

So taking all of the above into account, and assuming that PWC 11 and 01 are artifacts of a data entry error, using the DAL and the JSON vote tallies we see that there is a good bit, but not extreme amounts, of variation in the “excess vote” and that the deviations in excess vote seems greater in blue precincts than in red precincts.

The SAL data still does not agree with the JSON or the DAL data files, and I’m still working to figure out why.

My tabulated results are posted below. Note that I do not include the raw DAL data in my results below, only my summarized results, as the raw data contains personal address information. I welcome any / all peer review and will gladly make my code and compiled datasets available.

Update 2020-12-13 17:44:00

Per twitter comment, looking at the data with normalized x-axis (as percent of absentee vote total) in order to compensate for different precinct sizes produces the plot below. Newport News City and Richmond County now also stand out, and we still see a difference in deviation of excess votes between Biden precincts and Trump precincts.

Categories
Election Data Analysis Election Forensics Election Integrity Interesting programming technical

HART Voting Machines in PWC, VA

Discovered today that my county PWC, VA uses the HART voting machine systems and I have been doing a little research. Right now I’m just seeing what I can find and verify and collecting them on this page.

Biggest Find:

I found a very recent paper (2019) discussing and demonstrating methods by which to hack all of the major brand voting machines that use ballot images. It’s effective enough to be able to defeat any ballot image recounts as well. It’s a fairly simple man-in-the-middle attack vector, which needs to only install a wrapper around the windows scanner driver for the scanning systems. … and given all of these systems are using unencrypted(!) USB sticks(!!), thats pretty easy to do!!!

The wrapped adversarial payload can use some standard “textbook” (… no really … I own multiple textbooks that reference them) image processing tricks to selectively switch where the voter has marked the ballot in the image as its scanned, keeping the voters handwriting and style intact. The user sees their vote recorded, but the ballot image is altered before its recorded or counted. And auditing, or recounting from ballot images just recounts the swapped image. With a well designed and deterministic coding of this attack, re-running the same ballots through the scanner to perform a recount just re-applies the same deterministic conversion to the stored ballot images, and hence the recount stays the same. It’s a pretty devilishly elegant attack vector.

Bernhard M., Kandula K., Wink J., Halderman J.A. (2019) UnclearBallot: Automated Ballot Image Manipulation. In: Krimmer R. et al. (eds) Electronic Voting. E-Vote-ID 2019. Lecture Notes in Computer Science, vol 11759. Springer, Cham. https://doi.org/10.1007/978-3-030-30625-0_2
alt link: https://mbernhard.com/papers/unclearballot.pdf

Now I’m not saying that that took place in the election, but it is a direct example of a pretty scary scenario and a working example.

Other Finds:

Article on VA audit process, and why it can’t possibly affect the 2020 results. https://www.wusa9.com/article/news/politics/elections/virginia-election-audit-happens-after-results-are-certified-a-state-law-renders-the-election-check-powerless-to-fix-mistakes/65-cbfa162c-63fb-49c3-b298-cf84af01fc9d

HART Verity Systems Administrator Guide: https://sos.idaho.gov/elect/clerk/Hart/Verity2/6641-011%20A_Verity_2.X_Administrators%20Guide_Central.pdf

Feb 5 2016 PWC Elections Board Meeting Agenda discussing Acquisition of HART systems: https://sos.idaho.gov/elect/clerk/Hart/Verity2/6641-011%20A_Verity_2.X_Administrators%20Guide_Central.pdf

Romney Financial Ties to HART (from 2012): https://www.forbes.com/sites/rickungar/2012/10/20/romney-family-investment-ties-to-voting-machine-company-that-could-decide-the-election-causes-concern/?sh=5cba429e1afa

Another follow-the-money story from 2019: https://federalnewsnetwork.com/government-news/2019/07/whos-behind-voting-machine-makers-money-of-unclear-origins/

NBC Jan 2020 Story on Voting Machine makers testifying before congress: https://www.nbcnews.com/tech/security/voting-machine-makers-face-questions-house-lawmakers-more-remain-n1113181

2018 Story on Vulnerabilities of multiple Voting Machines: https://www.forbes.com/sites/rickungar/2012/10/20/romney-family-investment-ties-to-voting-machine-company-that-could-decide-the-election-causes-concern/?sh=5cba429e1afa

Whistleblower detailing HART shady business practices (2008): https://www.wired.com/2008/03/whistleblower-v/

HART Systems Security Issues (2006): https://hovav.net/ucsd/papers/ttbr-hart.html

Categories
Election Data Analysis Election Forensics Election Integrity Interesting programming technical

VA Senate Timeseries Election Data Plot

Computing the VA 2020 Senate Election data time series from the NYT Edison data feed. This is direct from the NYT data feed without any processing.

source: https://static01.nyt.com/elections-assets/2020/data/api/2020-11-03/race-page/virginia/senate.json

Categories
Election Data Analysis Election Forensics Election Integrity Interesting programming technical

VA Timeseries Election Data Plot

Computing the VA 2020 Presidential Election data time series from the NYT Edison data feed. This is direct from the NYT data feed without any processing.

source: https://static01.nyt.com/elections-assets/2020/data/api/2020-11-03/race-page/virginia/president.json

Categories
Election Data Analysis Election Forensics Election Integrity Interesting programming technical

Computing the VA 2020 Daily Absentee Ballot List Rejection Rate and Other Stats

Adding onto the work I’ve already done looking at the VA Daily Absentee List I wanted to compute the rejection rate for absentee ballots and some other basic statistics just from the Daily Absentee Ballot List (DAL) produced by VA Dept of Elections. (https://www.elections.virginia.gov/candidatepac-info/client-services/)

Keep in mind I’ve already been able to show:

  • There were 166 Absentee Ballot Applications that were received and accepted AFTER the corresponding ballot was received or accepted (here).
  • There is a discrepancy in the number of “excess” absentee votes counted vs. the total accepted registrations from the Daily Absentee List (here).
  • The 2020 VA election fingerprints, as well as other states, have significant structural irregularities and indications of vote manipulation (here).
  • The VA election fingerprints show a trend of increasing irregularity starting with 2008, 2012, 2016 and now 2020 (here).

Basic Info:

There are 3335335 entries, with 36 columns in the Daily Absentee List.

The column headings are: ELECTION_NAME, LOCALITY_CODE, LOCALITY_NAME, PRECINCT_CODE, PRECINCT_NAME, LAST_NAME, FIRST_NAME, MIDDLE_NAME, SUFFIX, ADDRESS_LINE_1, ADDRESS_LINE_2, ADDRESS_LINE_3, CITY, STATE, ZIP, COUNTRY, INTERNATIONAL, EMAIL_ADDRESS, FAX, VOTER_TYPE, ONGOING, APP_RECIEPT_DATE, APP_STATUS, BALLOT_RECEIPT_DATE, BALLOT_STATUS, identification_number, PROTECTED, CONG_CODE_VALUE, STSENATE_CODE_VALUE, STHOUSE_CODE_VALUE, AB_ADDRESS_LINE_1, AB_ADDRESS_LINE_2, AB_ADDRESS_LINE_3, AB_CITY, AB_STATE, AB_ZIP

Computing the Absentee Ballot Rejection Rate:

So (in MATLAB), with the full list directly imported into the ‘DailyAbsenteeList’ table variable:

% Lets see if we can teas out the rejection rate for 
% absentee ballots
>> ineligable = DailyAbsenteeList.APP_STATUS == "Denied/Not Eligible";
>> incomplete = DailyAbsenteeList.APP_STATUS == "Denied/Incomplete";
>> rejectionRate = 100 * mean(ineligable | incomplete)
>> ans = 0.0425

RESULT: The absentee ballot rejection rate was an exceptionally low 0.0425%

Finding the Counted ballots:

As we did in the “excess vote” computation, we need to find the indices into the list of all of the ballots that were counted, meaning their BALLOT_STATUS is in one of the following states: {‘On Machine’, ‘Marked’, ‘Pre-Processed’, ‘FWAB’}. So the ‘idxv’ variable below is a boolean flag indicating that the BALLOT_STATUS of each entry in the list is in a countable state.

% For each entry in the Daily Absentee List, test if 
% BALLOT_STATUS is in a valid state 
>> idxv = DailyAbsenteeList.BALLOT_STATUS=='Marked' | ...
    DailyAbsenteeList.BALLOT_STATUS=='Pre-Processed' | ...
    DailyAbsenteeList.BALLOT_STATUS=='On Machine' | ...
    DailyAbsenteeList.BALLOT_STATUS=='FWAB';

Now one would think that if a ballot has been marked into one of those BALLOT_STATUS categories, then that ballot application should have been ‘Approved’, right? Well lets double check that shall we:

% For each entry in the Daily Absentee List, test if 
% BALLOT_STATUS is in a valid state AND APP_STATUS is set to 
% 'Approved'.  (One would think these would match.)
>> idxav = (DailyAbsenteeList.BALLOT_STATUS=='Marked' | ...
    DailyAbsenteeList.BALLOT_STATUS=='Pre-Processed' | ...
    DailyAbsenteeList.BALLOT_STATUS=='On Machine' | ...
    DailyAbsenteeList.BALLOT_STATUS=='FWAB') & ...
    DailyAbsenteeList.APP_STATUS=='Approved';

We can check for mismatches by counting the number of flags that are not equal between ‘idxv’ and ‘idxav’.

% How many absentee ballots have their BALLOT_STATUS set to 
% a valid (i.e. "countable") state, but are not marked as 
% 'Approved'
>> numUnapprovedButCountableVotes = sum(idxv)-sum(idxav)
>> ans = 1437

RESULT: There are 1437 entries that have BALLOT_STATUS set to a valid state, but don’t have an approved absentee ballot application

Well … this begs some follow up questions…

Q1: Of the ballots that have been set to a valid BALLOT_STATUS state but were not set to ‘Approved’, what is the breakdown by APP_STATUS?

>> cancelled = sum(DailyAbsenteeList.APP_STATUS=='Cancelled or Duplicate' & (idxv~=idxav))
>> deniedInc = sum(DailyAbsenteeList.APP_STATUS=='Denied/Incomplete' & (idxv~=idxav))
>> deniedIne = sum(DailyAbsenteeList.APP_STATUS=='Denied/Not Eligible' & (idxv~=idxav))
>> issued = sum(DailyAbsenteeList.APP_STATUS=='Issued' & (idxv~=idxav))
>> onHold = sum(DailyAbsenteeList.APP_STATUS=='On Hold' & (idxv~=idxav))
>> pending = sum(DailyAbsenteeList.APP_STATUS=='Pending Approval' & (idxv~=idxav))
>> provisional = sum(DailyAbsenteeList.APP_STATUS=='Provisional' & (idxv~=idxav))

RESULTS: Of the 1437 ballots that were in a countable state but not marked as having APP_STATUS=’Accepted’, their APP_STATUS was:
cancelled = 444
deniedInc = 568
deniedIne = 4
issued = 28
onHold = 101
pending = 288
provisional = 4

Q2: Of the ballots that have been set to a valid BALLOT_STATUS state but were not set to ‘Approved’, what is the breakdown by BALLOT_STATUS?

>> unapproved_mailIn = sum(DailyAbsenteeList.BALLOT_STATUS=='Marked' & ...
    DailyAbsenteeList.APP_STATUS~='Approved')
>> unapproved_preProcessed = sum(DailyAbsenteeList.BALLOT_STATUS=='Pre-Processed' & ...
    DailyAbsenteeList.APP_STATUS~='Approved')
>> unapproved_earlyInPerson = sum(DailyAbsenteeList.BALLOT_STATUS=='On Machine' & ...
    DailyAbsenteeList.APP_STATUS~='Approved')
>> unapproved_FWAB = sum(DailyAbsenteeList.BALLOT_STATUS=='FWAB' & ...
    DailyAbsenteeList.APP_STATUS~='Approved')

RESULTS: Of the 1437 ballots that were in a countable state but not marked as having APP_STATUS=’Accepted’, their BALLOT_STATUS was:
unapproved_MailIn (‘Marked’) = 512
unapproved_preProcessed (‘Pre-Processed’) = 578
unapproved_earlyInPerson (‘On Machine’) = 347
unapproved_FWAB (‘FWAB’) = 0

Checking for duplicate identities:

Another check we can do is try to determine the amount of duplicated voters that have been accepted.

% What about the possibility of the same person being marked 
% with multiple ballots?  We will now go through 
% the'Accepted' and countable ballots and
% look for duplicate names and address information.
>> idxvs = find(idxav);
>> fnames = cellstr(DailyAbsenteeList.FIRST_NAME(idxvs));
>> lnames = cellstr(DailyAbsenteeList.LAST_NAME(idxvs));
>> mnames = cellstr(DailyAbsenteeList.MIDDLE_NAME(idxvs));
>> sffx = cellstr(DailyAbsenteeList.SUFFIX(idxvs));
>> addy1 = cellstr(DailyAbsenteeList.ADDRESS_LINE_1(idxvs));
>> addy2 = cellstr(num2str(DailyAbsenteeList.ADDRESS_LINE_2(idxvs)));
>> addy3 = cellstr(num2str(DailyAbsenteeList.ADDRESS_LINE_3(idxvs)));
>> zips = cellstr(num2str(DailyAbsenteeList.ZIP(idxvs)));
>> addy2 = strrep(strrep(addy2,'NaN',''),' ','');
>> addy3 = strrep(strrep(addy3,'NaN',''),' ','');
>> zips = strrep(strrep(zips,'NaN',''),' ','');
>> namesAndAddys = join([fnames, mnames, lnames, sffx, addy1, addy2, addy3, zips]);
>> [unames,unr,uni] = unique(namesAndAddys);
>> duplicateVotes = numel(namesAndAddys) - numel(unames)
>> ans = 166

RESULT: The number of repeated accepted absentee ballots is 166 … now where have we seen that number pop up before … ahhhh yes … its the same number of ballots that have ballot applications that we received and accepted AFTER the actual ballot was accepted and cast!