%load_ext django_orm_magic
%%django_orm
from django.db import models
from django.db.models import Sum
class Municipio(models.Model):
nombre = models.CharField(max_length=100)
def __unicode__(self):
return self.nombre
class Circuito(models.Model):
numero = models.CharField(max_length=100)
municipio = models.ForeignKey('Municipio', null=True)
def __unicode__(self):
return u"Circuito %s (%s)" % (self.numero, self.municipio)
class Mesa(models.Model):
circuito = models.ForeignKey('Circuito', null=True)
numero = models.CharField(max_length=100, unique=True)
url = models.URLField()
@property
def computados(self):
return self.votomesa_set.aggregate(Sum('votos'))['votos__sum']
def __unicode__(self):
return u"Mesa %s (%s)" % (self.numero, self.circuito)
class Opcion(models.Model):
# partido, blanco, etc.
nombre = models.CharField(max_length=100, unique=True)
def __unicode__(self):
return self.nombre
class VotoMesa(models.Model):
mesa = models.ForeignKey('Mesa')
opcion = models.ForeignKey('Opcion')
votos = models.IntegerField()
def __unicode__(self):
return u"%s: %d" % (self.opcion, self.votos)
class Meta:
unique_together = ('mesa', 'opcion')
/tmp/tmpR4lIHO/orm_magic
from django.db.models import Sum
from IPython.display import HTML, display_html
mesas = Mesa.objects.annotate(Sum('votomesa__votos')).order_by('-votomesa__votos__sum')[0:50]
for mesa in mesas:
display_html(HTML("<a href='%s'>%s</a> - Total computados: %d" % (mesa.url, mesa, mesa.computados)))
mesas0 = Mesa.objects.annotate(Sum('votomesa__votos')).filter(votomesa__votos__sum=0)
print mesas0.count()
for mesa in mesas0:
display_html(HTML("<a href='%s'>%s</a> - Total computados: %d" % (mesa.url, mesa, mesa.computados)))
201
result = {}
for opcion in Opcion.objects.all():
cantidad = Mesa.objects.annotate(computados=Sum('votomesa__votos')).filter(computados__gt=0,
votomesa__votos=0,
votomesa__opcion=opcion).count()
result[opcion] = cantidad
result
{<Opcion: FRENTE PROGRESISTA CIVICO Y SOCIAL>: 184, <Opcion: VECINALISMO INDEPENDIENTE>: 394, <Opcion: UNION CIVICA RADICAL>: 11, <Opcion: Votos recurridos>: 7068, <Opcion: Votos nulos>: 1026, <Opcion: FRENTE DE IZQUIERDA Y DE LOS TRABAJADORES>: 148, <Opcion: UNION POR CORDOBA>: 17, <Opcion: UNION PRO>: 36, <Opcion: ENCUENTRO VECINAL CORDOBA>: 614, <Opcion: Votos en blanco>: 747, <Opcion: COALICION CIVICA - AFIRMACION PARA UNA REPUBLICA IGUALITARIA (ARI)>: 228, <Opcion: FRENTE PARA LA VICTORIA>: 18}
Si multiplicamos por la cantidad de votos promedio para cada opcion
from django.db.models import Avg
proyeccion = {}
for opcion, mesas_0 in result.items():
prom = VotoMesa.objects.filter(opcion=opcion).aggregate(Avg('votos'))['votos__avg']
proyeccion[opcion] = prom * mesas_0
sorted(proyeccion.items(), key=lambda a: a[1], reverse=True)
[(<Opcion: Votos nulos>, 4659.387286255058), (<Opcion: VECINALISMO INDEPENDIENTE>, 4547.997389374756), (<Opcion: ENCUENTRO VECINAL CORDOBA>, 3304.988643780185), (<Opcion: FRENTE DE IZQUIERDA Y DE LOS TRABAJADORES>, 2774.7923247617805), (<Opcion: Votos en blanco>, 2262.158987077405), (<Opcion: COALICION CIVICA - AFIRMACION PARA UNA REPUBLICA IGUALITARIA (ARI)>, 1778.4952356089284), (<Opcion: FRENTE PROGRESISTA CIVICO Y SOCIAL>, 1702.8105991384934), (<Opcion: UNION PRO>, 1274.271243962929), (<Opcion: UNION POR CORDOBA>, 1090.4853152329983), (<Opcion: Votos recurridos>, 677.1847017360658), (<Opcion: FRENTE PARA LA VICTORIA>, 660.443284166558), (<Opcion: UNION CIVICA RADICAL>, 607.2801200887612)]
La UCR es la menos afectada por el "error" de mesas con 0 voto a favor y el FIT es una de las más afectadas?
result = []
for mun in Municipio.objects.all():
total = VotoMesa.objects.filter(mesa__circuito__municipio=mun).aggregate(Sum('votos'))['votos__sum']
nulos = VotoMesa.objects.filter(mesa__circuito__municipio=mun,
opcion__nombre='Votos nulos').aggregate(Sum('votos'))['votos__sum']
if total:
porcent = (nulos / float(total)) * 100
result.append((mun, total, nulos, porcent))
for r in sorted(result, key=lambda r: r[3], reverse=True):
print "%s - Total: %d - nulos %d (%.2f%%)" % r
result_circ = []
for circuito in Circuito.objects.filter(municipio=r[0]):
total = VotoMesa.objects.filter(mesa__circuito=circuito).aggregate(Sum('votos'))['votos__sum']
nulos = VotoMesa.objects.filter(mesa__circuito=circuito,
opcion__nombre='Votos nulos').aggregate(Sum('votos'))['votos__sum']
if total:
porcent = (nulos / float(total)) * 100
result_circ.append((circuito.numero, total, nulos, porcent))
for rc in sorted(result_circ, key=lambda r: r[3], reverse=True):
print " Circuito %s - Total: %d - nulos %d (%.2f%%)" % rc
012 - Punilla - Total: 106543 - nulos 2478 (2.33%) Circuito 0149 - Total: 414 - nulos 16 (3.86%) Circuito 0152 - Total: 3946 - nulos 131 (3.32%) Circuito 0156A - Total: 1066 - nulos 35 (3.28%) Circuito 0155A - Total: 714 - nulos 22 (3.08%) Circuito 0156D - Total: 2694 - nulos 80 (2.97%) Circuito 0152A - Total: 3293 - nulos 97 (2.95%) Circuito 0159 - Total: 3935 - nulos 108 (2.74%) Circuito 0158 - Total: 3460 - nulos 94 (2.72%) Circuito 0150 - Total: 12972 - nulos 327 (2.52%) Circuito 0156C - Total: 733 - nulos 18 (2.46%) Circuito 0147B - Total: 988 - nulos 24 (2.43%) Circuito 0147A - Total: 664 - nulos 16 (2.41%) Circuito 0148 - Total: 6496 - nulos 156 (2.40%) Circuito 0156 - Total: 38645 - nulos 863 (2.23%) Circuito 0147 - Total: 3592 - nulos 77 (2.14%) Circuito 0157 - Total: 5095 - nulos 107 (2.10%) Circuito 0158A - Total: 243 - nulos 5 (2.06%) Circuito 0158C - Total: 1322 - nulos 26 (1.97%) Circuito 0153 - Total: 4923 - nulos 92 (1.87%) Circuito 0154 - Total: 9396 - nulos 167 (1.78%) Circuito 0158B - Total: 531 - nulos 9 (1.69%) Circuito 0156E - Total: 167 - nulos 2 (1.20%) Circuito 0155 - Total: 542 - nulos 4 (0.74%) Circuito 0156B - Total: 284 - nulos 1 (0.35%) Circuito 0151 - Total: 428 - nulos 1 (0.23%) 021 - Santa María - Total: 58373 - nulos 1302 (2.23%) Circuito 0318 - Total: 4 - nulos 1 (25.00%) Circuito 0316J - Total: 1567 - nulos 63 (4.02%) Circuito 0326 - Total: 5225 - nulos 210 (4.02%) Circuito 0326B - Total: 681 - nulos 26 (3.82%) Circuito 0316G - Total: 769 - nulos 20 (2.60%) Circuito 0316A - Total: 2330 - nulos 58 (2.49%) Circuito 0319 - Total: 1169 - nulos 28 (2.40%) Circuito 0316 - Total: 29881 - nulos 705 (2.36%) Circuito 0316E - Total: 732 - nulos 17 (2.32%) Circuito 0326A - Total: 1827 - nulos 41 (2.24%) Circuito 0316I - Total: 527 - nulos 9 (1.71%) Circuito 0328 - Total: 769 - nulos 13 (1.69%) Circuito 0324 - Total: 778 - nulos 11 (1.41%) Circuito 0330 - Total: 433 - nulos 6 (1.39%) Circuito 0326C - Total: 734 - nulos 10 (1.36%) Circuito 0316F - Total: 389 - nulos 5 (1.29%) Circuito 0316B - Total: 85 - nulos 1 (1.18%) Circuito 0317 - Total: 175 - nulos 2 (1.14%) Circuito 0331 - Total: 2677 - nulos 29 (1.08%) Circuito 0330A - Total: 319 - nulos 3 (0.94%) Circuito 0316H - Total: 456 - nulos 4 (0.88%) Circuito 0328B - Total: 469 - nulos 4 (0.85%) Circuito 0323 - Total: 4289 - nulos 34 (0.79%) Circuito 0316D - Total: 285 - nulos 1 (0.35%) Circuito 0325 - Total: 1095 - nulos 1 (0.09%) Circuito 0316C - Total: 101 - nulos 0 (0.00%) Circuito 0320 - Total: 18 - nulos 0 (0.00%) Circuito 0322 - Total: 51 - nulos 0 (0.00%) Circuito 0327 - Total: 403 - nulos 0 (0.00%) Circuito 0329 - Total: 135 - nulos 0 (0.00%) 003 - Colón - Total: 135270 - nulos 2784 (2.06%) Circuito 0041A - Total: 6367 - nulos 203 (3.19%) Circuito 0035 - Total: 6955 - nulos 218 (3.13%) Circuito 0033A - Total: 218 - nulos 6 (2.75%) Circuito 0037 - Total: 12241 - nulos 308 (2.52%) Circuito 0040 - Total: 11665 - nulos 284 (2.43%) Circuito 0031A - Total: 1531 - nulos 35 (2.29%) Circuito 0028 - Total: 12038 - nulos 265 (2.20%) Circuito 0028A - Total: 8011 - nulos 176 (2.20%) Circuito 0029 - Total: 12316 - nulos 269 (2.18%) Circuito 0034 - Total: 6310 - nulos 125 (1.98%) Circuito 0033 - Total: 19262 - nulos 350 (1.82%) Circuito 0032 - Total: 1185 - nulos 21 (1.77%) Circuito 0038 - Total: 5055 - nulos 87 (1.72%) Circuito 0027 - Total: 2130 - nulos 35 (1.64%) Circuito 0031B - Total: 200 - nulos 3 (1.50%) Circuito 0041 - Total: 19738 - nulos 291 (1.47%) Circuito 0040A - Total: 5204 - nulos 69 (1.33%) Circuito 0031 - Total: 728 - nulos 8 (1.10%) Circuito 0030 - Total: 3209 - nulos 28 (0.87%) Circuito 0035A - Total: 419 - nulos 3 (0.72%) Circuito 0029A - Total: 223 - nulos 0 (0.00%) Circuito 0036 - Total: 220 - nulos 0 (0.00%) Circuito 0039 - Total: 45 - nulos 0 (0.00%) 013 - Río Cuarto - Total: 148468 - nulos 3020 (2.03%) Circuito 0184A - Total: 487 - nulos 15 (3.08%) Circuito 0186 - Total: 17867 - nulos 524 (2.93%) Circuito 0165 - Total: 20432 - nulos 577 (2.82%) Circuito 0175 - Total: 39 - nulos 1 (2.56%) Circuito 0188 - Total: 54868 - nulos 1280 (2.33%) Circuito 0182 - Total: 735 - nulos 17 (2.31%) Circuito 0169 - Total: 275 - nulos 6 (2.18%) Circuito 0176 - Total: 46 - nulos 1 (2.17%) Circuito 0179 - Total: 3666 - nulos 78 (2.13%) Circuito 0172 - Total: 2867 - nulos 58 (2.02%) Circuito 0187 - Total: 57 - nulos 1 (1.75%) Circuito 0190 - Total: 114 - nulos 2 (1.75%) Circuito 0168 - Total: 652 - nulos 11 (1.69%) Circuito 0189 - Total: 5512 - nulos 85 (1.54%) Circuito 0160 - Total: 1946 - nulos 26 (1.34%) Circuito 0171 - Total: 83 - nulos 1 (1.20%) Circuito 0161 - Total: 4708 - nulos 53 (1.13%) Circuito 0191 - Total: 2444 - nulos 27 (1.10%) Circuito 0160A - Total: 199 - nulos 2 (1.01%) Circuito 0180 - Total: 199 - nulos 2 (1.01%) Circuito 0183 - Total: 6982 - nulos 68 (0.97%) Circuito 0184 - Total: 6131 - nulos 57 (0.93%) Circuito 0166 - Total: 4630 - nulos 43 (0.93%) Circuito 0174 - Total: 590 - nulos 5 (0.85%) Circuito 0177 - Total: 1803 - nulos 14 (0.78%) Circuito 0162 - Total: 3925 - nulos 30 (0.76%) Circuito 0163 - Total: 786 - nulos 6 (0.76%) Circuito 0194 - Total: 413 - nulos 3 (0.73%) Circuito 0193 - Total: 418 - nulos 3 (0.72%) Circuito 0178A - Total: 319 - nulos 2 (0.63%) Circuito 0170 - Total: 2256 - nulos 13 (0.58%) Circuito 0167 - Total: 874 - nulos 5 (0.57%) Circuito 0191A - Total: 215 - nulos 1 (0.47%) Circuito 0164 - Total: 1369 - nulos 3 (0.22%) Circuito 0178 - Total: 29 - nulos 0 (0.00%) Circuito 0178B - Total: 62 - nulos 0 (0.00%) Circuito 0181 - Total: 111 - nulos 0 (0.00%) Circuito 0185 - Total: 2 - nulos 0 (0.00%) Circuito 0192 - Total: 357 - nulos 0 (0.00%) 001 - Capital - Total: 792729 - nulos 15760 (1.99%) Circuito 0013M - Total: 221 - nulos 11 (4.98%) Circuito 0004E - Total: 1176 - nulos 49 (4.17%) Circuito 0013D - Total: 1821 - nulos 75 (4.12%) Circuito 0010M - Total: 541 - nulos 21 (3.88%) Circuito 0005A - Total: 3809 - nulos 134 (3.52%) Circuito 0005F - Total: 3320 - nulos 112 (3.37%) Circuito 0014N - Total: 5339 - nulos 179 (3.35%) Circuito 0014K - Total: 2958 - nulos 94 (3.18%) Circuito 0010E - Total: 8818 - nulos 277 (3.14%) Circuito 0005E - Total: 3435 - nulos 104 (3.03%) Circuito 0013G - Total: 12526 - nulos 378 (3.02%) Circuito 0008 - Total: 464 - nulos 14 (3.02%) Circuito 0011 - Total: 3149 - nulos 93 (2.95%) Circuito 0013E - Total: 744 - nulos 21 (2.82%) Circuito 0011I - Total: 10372 - nulos 287 (2.77%) Circuito 0012G - Total: 7504 - nulos 205 (2.73%) Circuito 0008C - Total: 6584 - nulos 178 (2.70%) Circuito 0010L - Total: 18979 - nulos 506 (2.67%) Circuito 0013K - Total: 1391 - nulos 37 (2.66%) Circuito 0014A - Total: 11172 - nulos 297 (2.66%) Circuito 0014E - Total: 4771 - nulos 126 (2.64%) Circuito 0012I - Total: 1333 - nulos 35 (2.63%) Circuito 0012A - Total: 3964 - nulos 104 (2.62%) Circuito 0010A - Total: 3774 - nulos 99 (2.62%) Circuito 0010D - Total: 2602 - nulos 68 (2.61%) Circuito 0012E - Total: 2871 - nulos 75 (2.61%) Circuito 0013O - Total: 735 - nulos 19 (2.59%) Circuito 0012D - Total: 17836 - nulos 461 (2.58%) Circuito 0011E - Total: 11705 - nulos 302 (2.58%) Circuito 0013A - Total: 14213 - nulos 361 (2.54%) Circuito 0013H - Total: 13323 - nulos 336 (2.52%) Circuito 0010J - Total: 8944 - nulos 225 (2.52%) Circuito 0006F - Total: 6010 - nulos 151 (2.51%) Circuito 0005I - Total: 3038 - nulos 76 (2.50%) Circuito 0014O - Total: 5418 - nulos 135 (2.49%) Circuito 0007G - Total: 9105 - nulos 223 (2.45%) Circuito 0011K - Total: 7989 - nulos 193 (2.42%) Circuito 0011G - Total: 9200 - nulos 221 (2.40%) Circuito 0013C - Total: 10512 - nulos 246 (2.34%) Circuito 0009C - Total: 10664 - nulos 248 (2.33%) Circuito 0012 - Total: 6088 - nulos 141 (2.32%) Circuito 0010 - Total: 12803 - nulos 293 (2.29%) Circuito 0004C - Total: 3240 - nulos 74 (2.28%) Circuito 0013J - Total: 21029 - nulos 477 (2.27%) Circuito 0013I - Total: 4644 - nulos 105 (2.26%) Circuito 0005G - Total: 11490 - nulos 254 (2.21%) Circuito 0005C - Total: 13696 - nulos 302 (2.21%) Circuito 0013 - Total: 7122 - nulos 157 (2.20%) Circuito 0007A - Total: 4567 - nulos 99 (2.17%) Circuito 0005H - Total: 1202 - nulos 26 (2.16%) Circuito 0005 - Total: 9957 - nulos 215 (2.16%) Circuito 0006E - Total: 1311 - nulos 28 (2.14%) Circuito 0005B - Total: 1574 - nulos 33 (2.10%) Circuito 0013F - Total: 5892 - nulos 123 (2.09%) Circuito 0013N - Total: 5821 - nulos 120 (2.06%) Circuito 0011D - Total: 10103 - nulos 207 (2.05%) Circuito 0014H - Total: 983 - nulos 20 (2.03%) Circuito 0010F - Total: 9765 - nulos 196 (2.01%) Circuito 0008B - Total: 14390 - nulos 288 (2.00%) Circuito 0010C - Total: 5471 - nulos 109 (1.99%) Circuito 0014G - Total: 6685 - nulos 131 (1.96%) Circuito 0014P - Total: 2713 - nulos 53 (1.95%) Circuito 0012F - Total: 14782 - nulos 286 (1.93%) Circuito 0007F - Total: 6495 - nulos 125 (1.92%) Circuito 0011J - Total: 13442 - nulos 249 (1.85%) Circuito 0014I - Total: 3906 - nulos 72 (1.84%) Circuito 0007E - Total: 12240 - nulos 220 (1.80%) Circuito 0012C - Total: 3519 - nulos 63 (1.79%) Circuito 0014Q - Total: 842 - nulos 15 (1.78%) Circuito 0014F - Total: 5289 - nulos 94 (1.78%) Circuito 0009F - Total: 11750 - nulos 208 (1.77%) Circuito 0005D - Total: 7292 - nulos 129 (1.77%) Circuito 0007B - Total: 16991 - nulos 300 (1.77%) Circuito 0014B - Total: 5911 - nulos 102 (1.73%) Circuito 0011A - Total: 17438 - nulos 300 (1.72%) Circuito 0009D - Total: 7406 - nulos 127 (1.71%) Circuito 0011C - Total: 11896 - nulos 202 (1.70%) Circuito 0010G - Total: 14702 - nulos 248 (1.69%) Circuito 0012H - Total: 7496 - nulos 125 (1.67%) Circuito 0013L - Total: 303 - nulos 5 (1.65%) Circuito 0010I - Total: 7355 - nulos 119 (1.62%) Circuito 0011B - Total: 4910 - nulos 77 (1.57%) Circuito 0010K - Total: 3135 - nulos 49 (1.56%) Circuito 0012B - Total: 16704 - nulos 259 (1.55%) Circuito 0009E - Total: 3444 - nulos 53 (1.54%) Circuito 0011F - Total: 4669 - nulos 71 (1.52%) Circuito 0014C - Total: 3493 - nulos 53 (1.52%) Circuito 0002 - Total: 3744 - nulos 56 (1.50%) Circuito 0004B - Total: 11849 - nulos 176 (1.49%) Circuito 0006B - Total: 210 - nulos 3 (1.43%) Circuito 0009A - Total: 3729 - nulos 53 (1.42%) Circuito 0006C - Total: 8460 - nulos 120 (1.42%) Circuito 0010B - Total: 9398 - nulos 132 (1.40%) Circuito 0010H - Total: 9271 - nulos 126 (1.36%) Circuito 0004A - Total: 13506 - nulos 181 (1.34%) Circuito 0006 - Total: 4031 - nulos 53 (1.31%) Circuito 0007 - Total: 160 - nulos 2 (1.25%) Circuito 0008A - Total: 2902 - nulos 36 (1.24%) Circuito 0003 - Total: 14302 - nulos 176 (1.23%) Circuito 0004F - Total: 1152 - nulos 14 (1.22%) Circuito 0001 - Total: 10842 - nulos 128 (1.18%) Circuito 0006D - Total: 5020 - nulos 59 (1.18%) Circuito 0011H - Total: 5189 - nulos 60 (1.16%) Circuito 0009B - Total: 6348 - nulos 73 (1.15%) Circuito 0014M - Total: 7561 - nulos 79 (1.04%) Circuito 0007D - Total: 6355 - nulos 66 (1.04%) Circuito 0009G - Total: 4540 - nulos 47 (1.04%) Circuito 0009 - Total: 4746 - nulos 49 (1.03%) Circuito 0004 - Total: 13812 - nulos 127 (0.92%) Circuito 0013B - Total: 128 - nulos 1 (0.78%) Circuito 0014L - Total: 4654 - nulos 36 (0.77%) Circuito 0014 - Total: 4947 - nulos 37 (0.75%) Circuito 0004D - Total: 1260 - nulos 9 (0.71%) Circuito 0014D - Total: 5450 - nulos 35 (0.64%) Circuito 0006A - Total: 340 - nulos 2 (0.59%) Circuito 0014J - Total: 6120 - nulos 32 (0.52%) Circuito 0011M - Total: 2495 - nulos 11 (0.44%) Circuito 0011L - Total: 1913 - nulos 3 (0.16%) Circuito 0007C - Total: 9 - nulos 0 (0.00%) 011 - Pocho - Total: 3035 - nulos 55 (1.81%) Circuito 0146B - Total: 122 - nulos 12 (9.84%) Circuito 0146A - Total: 202 - nulos 5 (2.48%) Circuito 0146 - Total: 1387 - nulos 29 (2.09%) Circuito 0146C - Total: 87 - nulos 1 (1.15%) Circuito 0144 - Total: 610 - nulos 7 (1.15%) Circuito 0145 - Total: 365 - nulos 1 (0.27%) Circuito 0144A - Total: 40 - nulos 0 (0.00%) Circuito 0144B - Total: 35 - nulos 0 (0.00%) Circuito 0145A - Total: 187 - nulos 0 (0.00%) 008 - Juárez Celman - Total: 37857 - nulos 651 (1.72%) Circuito 0109 - Total: 7226 - nulos 193 (2.67%) Circuito 0108 - Total: 799 - nulos 18 (2.25%) Circuito 0112 - Total: 8244 - nulos 184 (2.23%) Circuito 0106 - Total: 7751 - nulos 135 (1.74%) Circuito 0102 - Total: 3784 - nulos 64 (1.69%) Circuito 0114 - Total: 256 - nulos 3 (1.17%) Circuito 0113 - Total: 510 - nulos 5 (0.98%) Circuito 0118 - Total: 3715 - nulos 33 (0.89%) Circuito 0111 - Total: 917 - nulos 5 (0.55%) Circuito 0107 - Total: 1457 - nulos 6 (0.41%) Circuito 0116 - Total: 1074 - nulos 2 (0.19%) Circuito 0117 - Total: 1667 - nulos 3 (0.18%) Circuito 0103 - Total: 47 - nulos 0 (0.00%) Circuito 0105 - Total: 251 - nulos 0 (0.00%) Circuito 0110 - Total: 26 - nulos 0 (0.00%) Circuito 0110A - Total: 55 - nulos 0 (0.00%) Circuito 0116A - Total: 78 - nulos 0 (0.00%) 004 - Cruz del Eje - Total: 30008 - nulos 506 (1.69%) Circuito 0053A - Total: 30 - nulos 1 (3.33%) Circuito 0052 - Total: 169 - nulos 5 (2.96%) Circuito 0043 - Total: 36 - nulos 1 (2.78%) Circuito 0044A - Total: 191 - nulos 5 (2.62%) Circuito 0054 - Total: 1455 - nulos 35 (2.41%) Circuito 0054A - Total: 92 - nulos 2 (2.17%) Circuito 0044 - Total: 16929 - nulos 319 (1.88%) Circuito 0056 - Total: 5096 - nulos 96 (1.88%) Circuito 0049 - Total: 64 - nulos 1 (1.56%) Circuito 0055A - Total: 79 - nulos 1 (1.27%) Circuito 0051A - Total: 82 - nulos 1 (1.22%) Circuito 0050 - Total: 640 - nulos 7 (1.09%) Circuito 0043A - Total: 96 - nulos 1 (1.04%) Circuito 0050A - Total: 486 - nulos 5 (1.03%) Circuito 0055 - Total: 1614 - nulos 14 (0.87%) Circuito 0043B - Total: 153 - nulos 1 (0.65%) Circuito 0051 - Total: 462 - nulos 3 (0.65%) Circuito 0045 - Total: 465 - nulos 3 (0.65%) Circuito 0048 - Total: 381 - nulos 2 (0.52%) Circuito 0042 - Total: 440 - nulos 2 (0.45%) Circuito 0046 - Total: 298 - nulos 1 (0.34%) Circuito 0043C - Total: 2 - nulos 0 (0.00%) Circuito 0046B - Total: 179 - nulos 0 (0.00%) Circuito 0047 - Total: 63 - nulos 0 (0.00%) Circuito 0053 - Total: 29 - nulos 0 (0.00%) Circuito 0053B - Total: 19 - nulos 0 (0.00%) Circuito 0057 - Total: 458 - nulos 0 (0.00%) 002 - Calamuchita - Total: 32614 - nulos 537 (1.65%) Circuito 0018B - Total: 160 - nulos 9 (5.62%) Circuito 0016C - Total: 82 - nulos 3 (3.66%) Circuito 0024 - Total: 1424 - nulos 36 (2.53%) Circuito 0017 - Total: 5259 - nulos 125 (2.38%) Circuito 0020A - Total: 5079 - nulos 106 (2.09%) Circuito 0015A - Total: 336 - nulos 7 (2.08%) Circuito 0015 - Total: 204 - nulos 4 (1.96%) Circuito 0020B - Total: 534 - nulos 10 (1.87%) Circuito 0026 - Total: 7323 - nulos 116 (1.58%) Circuito 0022 - Total: 833 - nulos 13 (1.56%) Circuito 0020 - Total: 838 - nulos 13 (1.55%) Circuito 0328A - Total: 522 - nulos 8 (1.53%) Circuito 0019 - Total: 2187 - nulos 33 (1.51%) Circuito 0023 - Total: 821 - nulos 12 (1.46%) Circuito 0018 - Total: 1167 - nulos 14 (1.20%) Circuito 0026B - Total: 97 - nulos 1 (1.03%) Circuito 0025B - Total: 236 - nulos 2 (0.85%) Circuito 0024A - Total: 2325 - nulos 18 (0.77%) Circuito 0025 - Total: 2408 - nulos 7 (0.29%) Circuito 0016 - Total: 87 - nulos 0 (0.00%) Circuito 0016A - Total: 46 - nulos 0 (0.00%) Circuito 0016B - Total: 15 - nulos 0 (0.00%) Circuito 0018A - Total: 132 - nulos 0 (0.00%) Circuito 0018C - Total: 33 - nulos 0 (0.00%) Circuito 0018D - Total: 68 - nulos 0 (0.00%) Circuito 0021 - Total: 219 - nulos 0 (0.00%) Circuito 0025A - Total: 79 - nulos 0 (0.00%) Circuito 0026A - Total: 100 - nulos 0 (0.00%) 016 - Río Segundo - Total: 66285 - nulos 1075 (1.62%) Circuito 0243 - Total: 13162 - nulos 320 (2.43%) Circuito 0237 - Total: 4377 - nulos 97 (2.22%) Circuito 0233 - Total: 1152 - nulos 23 (2.00%) Circuito 0245 - Total: 9395 - nulos 173 (1.84%) Circuito 0241 - Total: 4207 - nulos 76 (1.81%) Circuito 0240 - Total: 9233 - nulos 163 (1.77%) Circuito 0231 - Total: 263 - nulos 4 (1.52%) Circuito 0244A - Total: 224 - nulos 3 (1.34%) Circuito 0235 - Total: 5481 - nulos 70 (1.28%) Circuito 0239 - Total: 9402 - nulos 114 (1.21%) Circuito 0237A - Total: 696 - nulos 8 (1.15%) Circuito 0234 - Total: 1148 - nulos 11 (0.96%) Circuito 0237B - Total: 146 - nulos 1 (0.68%) Circuito 0242 - Total: 344 - nulos 2 (0.58%) Circuito 0236 - Total: 1254 - nulos 5 (0.40%) Circuito 0244 - Total: 1600 - nulos 4 (0.25%) Circuito 0238 - Total: 559 - nulos 1 (0.18%) Circuito 0230 - Total: 1700 - nulos 0 (0.00%) Circuito 0230A - Total: 554 - nulos 0 (0.00%) Circuito 0232 - Total: 1338 - nulos 0 (0.00%) Circuito 0236A - Total: 32 - nulos 0 (0.00%) Circuito 0242A - Total: 18 - nulos 0 (0.00%) 023 - Tercero Arriba - Total: 71519 - nulos 1112 (1.55%) Circuito 0340 - Total: 7476 - nulos 155 (2.07%) Circuito 0344 - Total: 8376 - nulos 170 (2.03%) Circuito 0348 - Total: 30840 - nulos 543 (1.76%) Circuito 0341 - Total: 3474 - nulos 61 (1.76%) Circuito 0346 - Total: 1043 - nulos 14 (1.34%) Circuito 0349 - Total: 3669 - nulos 43 (1.17%) Circuito 0336 - Total: 7567 - nulos 83 (1.10%) Circuito 0343 - Total: 481 - nulos 5 (1.04%) Circuito 0339 - Total: 1046 - nulos 9 (0.86%) Circuito 0337A - Total: 492 - nulos 4 (0.81%) Circuito 0342 - Total: 2676 - nulos 20 (0.75%) Circuito 0338 - Total: 1343 - nulos 5 (0.37%) Circuito 0337 - Total: 1940 - nulos 0 (0.00%) Circuito 0345 - Total: 339 - nulos 0 (0.00%) Circuito 0347 - Total: 204 - nulos 0 (0.00%) Circuito 0347A - Total: 234 - nulos 0 (0.00%) Circuito 0349A - Total: 319 - nulos 0 (0.00%) 006 - General San Martín - Total: 81199 - nulos 1253 (1.54%) Circuito 0081 - Total: 58 - nulos 2 (3.45%) Circuito 0083 - Total: 896 - nulos 27 (3.01%) Circuito 0089 - Total: 51605 - nulos 898 (1.74%) Circuito 0078 - Total: 1075 - nulos 18 (1.67%) Circuito 0090 - Total: 12410 - nulos 192 (1.55%) Circuito 0075 - Total: 772 - nulos 9 (1.17%) Circuito 0088 - Total: 2317 - nulos 25 (1.08%) Circuito 0077 - Total: 2913 - nulos 29 (1.00%) Circuito 0086 - Total: 520 - nulos 5 (0.96%) Circuito 0079 - Total: 2077 - nulos 19 (0.91%) Circuito 0074 - Total: 2343 - nulos 16 (0.68%) Circuito 0073 - Total: 922 - nulos 6 (0.65%) Circuito 0087 - Total: 1523 - nulos 6 (0.39%) Circuito 0076 - Total: 770 - nulos 1 (0.13%) Circuito 0080 - Total: 498 - nulos 0 (0.00%) Circuito 0082 - Total: 445 - nulos 0 (0.00%) Circuito 0084 - Total: 35 - nulos 0 (0.00%) Circuito 0088A - Total: 7 - nulos 0 (0.00%) Circuito 0088B - Total: 13 - nulos 0 (0.00%) 007 - Ischilin - Total: 20259 - nulos 312 (1.54%) Circuito 0098 - Total: 49 - nulos 2 (4.08%) Circuito 0095 - Total: 14346 - nulos 244 (1.70%) Circuito 0091 - Total: 361 - nulos 6 (1.66%) Circuito 0092 - Total: 310 - nulos 5 (1.61%) Circuito 0096A - Total: 454 - nulos 7 (1.54%) Circuito 0099 - Total: 3101 - nulos 44 (1.42%) Circuito 0091C - Total: 201 - nulos 2 (1.00%) Circuito 0094 - Total: 488 - nulos 2 (0.41%) Circuito 0091A - Total: 12 - nulos 0 (0.00%) Circuito 0091B - Total: 78 - nulos 0 (0.00%) Circuito 0093 - Total: 254 - nulos 0 (0.00%) Circuito 0097 - Total: 58 - nulos 0 (0.00%) Circuito 0100 - Total: 486 - nulos 0 (0.00%) Circuito 0101 - Total: 61 - nulos 0 (0.00%) 018 - San Alberto - Total: 21994 - nulos 327 (1.49%) Circuito 0263D - Total: 344 - nulos 14 (4.07%) Circuito 0260A - Total: 38 - nulos 1 (2.63%) Circuito 0264A - Total: 134 - nulos 3 (2.24%) Circuito 0261 - Total: 3667 - nulos 78 (2.13%) Circuito 0262 - Total: 5611 - nulos 113 (2.01%) Circuito 0263C - Total: 351 - nulos 7 (1.99%) Circuito 0266 - Total: 1011 - nulos 19 (1.88%) Circuito 0263A - Total: 115 - nulos 2 (1.74%) Circuito 0264 - Total: 239 - nulos 4 (1.67%) Circuito 0263 - Total: 1652 - nulos 26 (1.57%) Circuito 0260 - Total: 695 - nulos 9 (1.29%) Circuito 0261A - Total: 634 - nulos 8 (1.26%) Circuito 0265A - Total: 2959 - nulos 33 (1.12%) Circuito 0263E - Total: 480 - nulos 4 (0.83%) Circuito 0265C - Total: 591 - nulos 2 (0.34%) Circuito 0265 - Total: 3197 - nulos 4 (0.13%) Circuito 0259 - Total: 15 - nulos 0 (0.00%) Circuito 0261B - Total: 42 - nulos 0 (0.00%) Circuito 0263B - Total: 26 - nulos 0 (0.00%) Circuito 0265B - Total: 54 - nulos 0 (0.00%) Circuito 0266A - Total: 139 - nulos 0 (0.00%) 020 - San Justo - Total: 127322 - nulos 1796 (1.41%) Circuito 0311 - Total: 177 - nulos 6 (3.39%) Circuito 0287 - Total: 93 - nulos 3 (3.23%) Circuito 0288A - Total: 86 - nulos 2 (2.33%) Circuito 0302 - Total: 86 - nulos 2 (2.33%) Circuito 0310 - Total: 19612 - nulos 441 (2.25%) Circuito 0298 - Total: 10672 - nulos 214 (2.01%) Circuito 0279 - Total: 14760 - nulos 264 (1.79%) Circuito 0310A - Total: 18878 - nulos 307 (1.63%) Circuito 0313 - Total: 495 - nulos 8 (1.62%) Circuito 0285 - Total: 4201 - nulos 65 (1.55%) Circuito 0301 - Total: 1326 - nulos 19 (1.43%) Circuito 0278 - Total: 1450 - nulos 20 (1.38%) Circuito 0297 - Total: 944 - nulos 13 (1.38%) Circuito 0290 - Total: 1369 - nulos 18 (1.31%) Circuito 0304 - Total: 11098 - nulos 143 (1.29%) Circuito 0308 - Total: 2215 - nulos 27 (1.22%) Circuito 0314 - Total: 2050 - nulos 23 (1.12%) Circuito 0294 - Total: 790 - nulos 8 (1.01%) Circuito 0291 - Total: 4694 - nulos 47 (1.00%) Circuito 0282 - Total: 6492 - nulos 65 (1.00%) Circuito 0303 - Total: 1563 - nulos 15 (0.96%) Circuito 0315 - Total: 537 - nulos 5 (0.93%) Circuito 0305 - Total: 3576 - nulos 32 (0.89%) Circuito 0295A - Total: 169 - nulos 1 (0.59%) Circuito 0293 - Total: 2639 - nulos 12 (0.45%) Circuito 0288 - Total: 1558 - nulos 7 (0.45%) Circuito 0307 - Total: 466 - nulos 2 (0.43%) Circuito 0309 - Total: 1139 - nulos 4 (0.35%) Circuito 0277 - Total: 2227 - nulos 7 (0.31%) Circuito 0280 - Total: 4307 - nulos 13 (0.30%) Circuito 0295 - Total: 1245 - nulos 3 (0.24%) Circuito 0279A - Total: 293 - nulos 0 (0.00%) Circuito 0281 - Total: 101 - nulos 0 (0.00%) Circuito 0283 - Total: 1268 - nulos 0 (0.00%) Circuito 0283A - Total: 155 - nulos 0 (0.00%) Circuito 0286 - Total: 111 - nulos 0 (0.00%) Circuito 0289 - Total: 932 - nulos 0 (0.00%) Circuito 0291A - Total: 64 - nulos 0 (0.00%) Circuito 0292 - Total: 77 - nulos 0 (0.00%) Circuito 0294A - Total: 168 - nulos 0 (0.00%) Circuito 0296 - Total: 1722 - nulos 0 (0.00%) Circuito 0299 - Total: 289 - nulos 0 (0.00%) Circuito 0300 - Total: 984 - nulos 0 (0.00%) Circuito 0306 - Total: 219 - nulos 0 (0.00%) Circuito 0312 - Total: 25 - nulos 0 (0.00%) 010 - Minas - Total: 3371 - nulos 46 (1.36%) Circuito 0139B - Total: 187 - nulos 7 (3.74%) Circuito 0140 - Total: 164 - nulos 4 (2.44%) Circuito 0139A - Total: 57 - nulos 1 (1.75%) Circuito 0140A - Total: 60 - nulos 1 (1.67%) Circuito 0138B - Total: 66 - nulos 1 (1.52%) Circuito 0138C - Total: 217 - nulos 3 (1.38%) Circuito 0142 - Total: 1494 - nulos 20 (1.34%) Circuito 0138 - Total: 577 - nulos 7 (1.21%) Circuito 0142A - Total: 104 - nulos 1 (0.96%) Circuito 0139 - Total: 156 - nulos 1 (0.64%) Circuito 0138A - Total: 18 - nulos 0 (0.00%) Circuito 0138D - Total: 111 - nulos 0 (0.00%) Circuito 0141 - Total: 56 - nulos 0 (0.00%) Circuito 0141A - Total: 104 - nulos 0 (0.00%) 019 - San Javier - Total: 31731 - nulos 421 (1.33%) Circuito 0269B - Total: 16 - nulos 1 (6.25%) Circuito 0274 - Total: 599 - nulos 14 (2.34%) Circuito 0267 - Total: 307 - nulos 7 (2.28%) Circuito 0270 - Total: 2932 - nulos 60 (2.05%) Circuito 0275 - Total: 1624 - nulos 32 (1.97%) Circuito 0273 - Total: 604 - nulos 9 (1.49%) Circuito 0268 - Total: 19465 - nulos 250 (1.28%) Circuito 0272 - Total: 725 - nulos 9 (1.24%) Circuito 0271 - Total: 1091 - nulos 11 (1.01%) Circuito 0275A - Total: 1322 - nulos 11 (0.83%) Circuito 0276 - Total: 604 - nulos 5 (0.83%) Circuito 0269 - Total: 2041 - nulos 12 (0.59%) Circuito 0269A - Total: 117 - nulos 0 (0.00%) Circuito 0274A - Total: 284 - nulos 0 (0.00%) 017 - Presidente Roque Sáenz Peña - Total: 22544 - nulos 231 (1.02%) Circuito 0254 - Total: 78 - nulos 2 (2.56%) Circuito 0252 - Total: 3940 - nulos 66 (1.68%) Circuito 0255 - Total: 331 - nulos 5 (1.51%) Circuito 0251 - Total: 67 - nulos 1 (1.49%) Circuito 0256 - Total: 97 - nulos 1 (1.03%) Circuito 0257 - Total: 2391 - nulos 23 (0.96%) Circuito 0248 - Total: 13271 - nulos 127 (0.96%) Circuito 0258 - Total: 479 - nulos 4 (0.84%) Circuito 0249 - Total: 982 - nulos 2 (0.20%) Circuito 0253 - Total: 908 - nulos 0 (0.00%) 015 - Río Seco - Total: 7589 - nulos 72 (0.95%) Circuito 0228 - Total: 1570 - nulos 25 (1.59%) Circuito 0226A - Total: 231 - nulos 3 (1.30%) Circuito 0229A - Total: 155 - nulos 2 (1.29%) Circuito 0229 - Total: 3427 - nulos 37 (1.08%) Circuito 0223 - Total: 295 - nulos 3 (1.02%) Circuito 0225 - Total: 584 - nulos 2 (0.34%) Circuito 0224 - Total: 18 - nulos 0 (0.00%) Circuito 0225A - Total: 56 - nulos 0 (0.00%) Circuito 0226 - Total: 299 - nulos 0 (0.00%) Circuito 0227 - Total: 482 - nulos 0 (0.00%) Circuito 0227B - Total: 242 - nulos 0 (0.00%) Circuito 0227D - Total: 230 - nulos 0 (0.00%) 014 - Río Primero - Total: 30305 - nulos 285 (0.94%) Circuito 0216 - Total: 23 - nulos 1 (4.35%) Circuito 0217 - Total: 88 - nulos 2 (2.27%) Circuito 0203 - Total: 300 - nulos 6 (2.00%) Circuito 0211 - Total: 6598 - nulos 123 (1.86%) Circuito 0201A - Total: 110 - nulos 2 (1.82%) Circuito 0208 - Total: 260 - nulos 4 (1.54%) Circuito 0218 - Total: 5171 - nulos 64 (1.24%) Circuito 0220 - Total: 5763 - nulos 57 (0.99%) Circuito 0212 - Total: 131 - nulos 1 (0.76%) Circuito 0213 - Total: 1721 - nulos 11 (0.64%) Circuito 0195 - Total: 160 - nulos 1 (0.62%) Circuito 0219 - Total: 163 - nulos 1 (0.61%) Circuito 0200 - Total: 416 - nulos 2 (0.48%) Circuito 0222 - Total: 779 - nulos 3 (0.39%) Circuito 0198 - Total: 856 - nulos 2 (0.23%) Circuito 0205 - Total: 1592 - nulos 2 (0.13%) Circuito 0204 - Total: 2948 - nulos 3 (0.10%) Circuito 0196 - Total: 183 - nulos 0 (0.00%) Circuito 0197 - Total: 254 - nulos 0 (0.00%) Circuito 0199 - Total: 187 - nulos 0 (0.00%) Circuito 0201 - Total: 79 - nulos 0 (0.00%) Circuito 0206 - Total: 56 - nulos 0 (0.00%) Circuito 0207 - Total: 180 - nulos 0 (0.00%) Circuito 0209 - Total: 141 - nulos 0 (0.00%) Circuito 0210 - Total: 88 - nulos 0 (0.00%) Circuito 0212B - Total: 215 - nulos 0 (0.00%) Circuito 0214 - Total: 1419 - nulos 0 (0.00%) Circuito 0215 - Total: 125 - nulos 0 (0.00%) Circuito 0215A - Total: 196 - nulos 0 (0.00%) Circuito 0221 - Total: 103 - nulos 0 (0.00%) 005 - General Roca - Total: 20448 - nulos 172 (0.84%) Circuito 0065 - Total: 15 - nulos 1 (6.67%) Circuito 0068 - Total: 233 - nulos 4 (1.72%) Circuito 0061 - Total: 5597 - nulos 70 (1.25%) Circuito 0059 - Total: 1253 - nulos 13 (1.04%) Circuito 0060 - Total: 2178 - nulos 21 (0.96%) Circuito 0071 - Total: 230 - nulos 2 (0.87%) Circuito 0072 - Total: 1843 - nulos 16 (0.87%) Circuito 0070 - Total: 3816 - nulos 33 (0.86%) Circuito 0062 - Total: 656 - nulos 4 (0.61%) Circuito 0063 - Total: 3061 - nulos 8 (0.26%) Circuito 0058 - Total: 196 - nulos 0 (0.00%) Circuito 0066 - Total: 1274 - nulos 0 (0.00%) Circuito 0067 - Total: 54 - nulos 0 (0.00%) Circuito 0069 - Total: 42 - nulos 0 (0.00%) 009 - Marcos Juárez - Total: 65172 - nulos 438 (0.67%) Circuito 0120 - Total: 4551 - nulos 74 (1.63%) Circuito 0136 - Total: 1966 - nulos 26 (1.32%) Circuito 0130 - Total: 546 - nulos 6 (1.10%) Circuito 0133 - Total: 16629 - nulos 177 (1.06%) Circuito 0124 - Total: 889 - nulos 8 (0.90%) Circuito 0121 - Total: 1621 - nulos 14 (0.86%) Circuito 0131 - Total: 7177 - nulos 56 (0.78%) Circuito 0134 - Total: 4180 - nulos 29 (0.69%) Circuito 0132 - Total: 2046 - nulos 8 (0.39%) Circuito 0125 - Total: 7013 - nulos 25 (0.36%) Circuito 0128 - Total: 2742 - nulos 6 (0.22%) Circuito 0129 - Total: 3063 - nulos 5 (0.16%) Circuito 0126 - Total: 4619 - nulos 3 (0.06%) Circuito 0119 - Total: 2319 - nulos 1 (0.04%) Circuito 0122 - Total: 139 - nulos 0 (0.00%) Circuito 0123 - Total: 3173 - nulos 0 (0.00%) Circuito 0127 - Total: 1684 - nulos 0 (0.00%) Circuito 0128A - Total: 98 - nulos 0 (0.00%) Circuito 0131A - Total: 23 - nulos 0 (0.00%) Circuito 0135 - Total: 280 - nulos 0 (0.00%) Circuito 0137 - Total: 414 - nulos 0 (0.00%) 022 - Sobremonte - Total: 2397 - nulos 15 (0.63%) Circuito 0335 - Total: 1730 - nulos 13 (0.75%) Circuito 0334 - Total: 268 - nulos 2 (0.75%) Circuito 0332 - Total: 399 - nulos 0 (0.00%)
Se consideran mesas computadas con 9 o más votos nulos que representen al menos un 3% de la mesa y donde el FIT haya sacado menos del 3% de los votos.
¿Puede que muchos de los votos nulos sean del FIT?
contador = 0
for mesa in Mesa.objects.annotate(Sum('votomesa__votos')).filter(votomesa__votos__sum__gt=0):
nulos = mesa.votomesa_set.filter(opcion__nombre='Votos nulos').aggregate(Sum('votos'))['votos__sum']
porcentaje_nulo = (nulos / float(mesa.computados)) * 100
votos_fit = mesa.votomesa_set.get(opcion__nombre='FRENTE DE IZQUIERDA Y DE LOS TRABAJADORES').votos
porcentaje_fit = (votos_fit / float(mesa.computados)) * 100
if nulos >= 9 and porcentaje_nulo >= 3 and porcentaje_fit <= 3:
contador += 1
display_html(HTML("<a href='%s'>%s</a> - Nulos %d, (%.2f%%) - FIT %d (%.2f %%)" % (mesa.url, mesa, nulos, porcentaje_nulo,
votos_fit, porcentaje_fit)))
contador
136
from django.db.models import Avg
for circuito in Circuito.objects.all():
promedio_ucr_circuito = VotoMesa.objects.filter(mesa__circuito=circuito, opcion__nombre='UNION CIVICA RADICAL').aggregate(Avg('votos'))['votos__avg']
if not promedio_ucr_circuito:
continue
for mesa in Mesa.objects.filter(circuito=circuito,
votomesa__votos__gte=promedio_ucr_circuito * 1.5,
votomesa__opcion__nombre='UNION CIVICA RADICAL'):
votos_ucr = mesa.votomesa_set.get(opcion__nombre='UNION CIVICA RADICAL').votos
porc_ucr = (votos_ucr / float(mesa.computados)) * 100
display_html(HTML("<a href='%s'>%s</a> - Total computados: %d, UCR: %d (%.2f%%) Promedio UCR/circ: %.2f votos" % (mesa.url, mesa,
mesa.computados,
votos_ucr, porc_ucr,
promedio_ucr_circuito)))