Skip to content

Instantly share code, notes, and snippets.

@nportinari
Last active October 9, 2022 21:43
Show Gist options
  • Save nportinari/7acc128190bd889cb14d675b876db37c to your computer and use it in GitHub Desktop.
Save nportinari/7acc128190bd889cb14d675b876db37c to your computer and use it in GitHub Desktop.
0510_caderno_eleitoral.ipynb
Display the source blob
Display the rendered blob
Raw
{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"colab": {
"provenance": [],
"collapsed_sections": [
"FxgFB-xIReHG"
],
"mount_file_id": "1noMiUM1SUmIPlcqXjWS3NdPT1QC1dTe-",
"authorship_tag": "ABX9TyPREkE9Sq5aBez7VzMQxBB8",
"include_colab_link": true
},
"kernelspec": {
"name": "python3",
"display_name": "Python 3"
}
},
"cells": [
{
"cell_type": "markdown",
"metadata": {
"id": "view-in-github",
"colab_type": "text"
},
"source": [
"<a href=\"https://colab.research.google.com/gist/nportinari/7acc128190bd889cb14d675b876db37c/0510_caderno_eleitoral.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "FxgFB-xIReHG"
},
"source": [
"# **Bibliotecas**"
]
},
{
"cell_type": "code",
"metadata": {
"id": "raiKgEpIQCXE"
},
"source": [
"import pandas as pd, seaborn as sb, numpy as np, matplotlib.pyplot as plt, io, requests, zipfile, io\n",
"!pip install -q xlrd\n",
"!pip install -U -q PyDrive\n",
"get_ipython().run_line_magic('matplotlib', 'inline')\n",
"low_memory = False\n",
"\n",
"from pydrive.auth import GoogleAuth\n",
"from pydrive.drive import GoogleDrive\n",
"from google.colab import auth\n",
"from oauth2client.client import GoogleCredentials\n",
"from google.colab import files\n",
"\n",
"pd.set_option('display.max_columns', None)\n",
"pd.options.display.float_format = \"{:,.2f}\".format\n",
"import unicodedata"
],
"execution_count": null,
"outputs": []
},
{
"cell_type": "markdown",
"source": [
"# **Votação**"
],
"metadata": {
"id": "IQDkf2QndeuL"
}
},
{
"cell_type": "code",
"source": [
"votacao = pd.read_csv('/content/drive/MyDrive/votacao_candidato_munzona_2022_BRASIL.csv',encoding='latin-1',sep=';',decimal=',')"
],
"metadata": {
"id": "KjDcSpulNpHl"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"votos_deputados = votacao[votacao.DS_CARGO == 'Deputado Federal'].groupby(['SQ_CANDIDATO','NM_CANDIDATO','SG_FEDERACAO','SG_PARTIDO','DS_SIT_TOT_TURNO','SG_UF']).sum()['QT_VOTOS_NOMINAIS_VALIDOS'].reset_index()"
],
"metadata": {
"id": "L-CsWMBikBQO"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"ufs = ['GO', 'SP', 'PE', 'CE', 'PR', 'PB', 'PA', 'AP', 'SC', 'AM', 'BA','RS', 'RN', 'MG', 'DF', 'PI', 'ES', 'RR', 'RJ', 'SE', 'MA', 'AC','RO', 'MT', 'MS', 'AL', 'TO']"
],
"metadata": {
"id": "4_ZUy6ElbOj9"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"cadeiras = {'AC':\t8,'AL':\t9,'AP':\t8,'AM':\t8,'BA':\t39,'CE':\t22,'DF':\t8,'ES':\t10,'GO':\t17,'MA':\t18,'MT':\t8,'MS':\t8,'MG':\t53,'PA':\t17,'PB':\t12,'PR':\t30,'PE':\t25,'PI':\t10,'RJ':\t46,'RN':\t8,'RS':\t31,'RO':\t8,'RR':\t8,'SC':\t16,'SP':\t70,'SE':\t8,'TO':\t8}"
],
"metadata": {
"id": "kbKNJlR9kkiz"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"def partido_ou_federacao(linha):\n",
" partido = linha['SG_PARTIDO']\n",
" federacao = linha['SG_FEDERACAO']\n",
" if federacao == '#NULO#':\n",
" return partido\n",
" else:\n",
" return federacao\n",
"\n",
"votos_deputados['P_OU_F'] = votos_deputados.apply(partido_ou_federacao, axis=1)"
],
"metadata": {
"id": "GL8jXG6Egk4F"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"tabela_QE = votos_deputados.groupby(['SG_UF']).sum()['QT_VOTOS_NOMINAIS_VALIDOS'].reset_index()\n",
"tabela_QE['cadeiras'] = tabela_QE['SG_UF'].map(cadeiras)"
],
"metadata": {
"id": "DtFtBep5l9F8"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"def coe_eleitoral(linha):\n",
" v = linha['QT_VOTOS_NOMINAIS_VALIDOS']\n",
" cad = linha['cadeiras']\n",
" res = v/cad\n",
" if res - int(res) > 0.5:\n",
" return (int(res) + 1)\n",
" else:\n",
" return int(res)\n",
"\n",
"tabela_QE['QE'] = tabela_QE.apply(coe_eleitoral,axis=1)"
],
"metadata": {
"id": "1WBXnRfe96Ay"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"tabela_QE['QE'] = tabela_QE['QT_VOTOS_NOMINAIS_VALIDOS'] / tabela_QE['cadeiras']\n",
"qe_dic = tabela_QE.set_index('SG_UF')['QE'].to_dict()"
],
"metadata": {
"id": "d0VRDvw_mH1m"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"tabela_QP = votos_deputados.groupby(['SG_UF','P_OU_F']).sum()['QT_VOTOS_NOMINAIS_VALIDOS'].reset_index()\n",
"tabela_QP['QE'] = tabela_QP['SG_UF'].map(qe_dic)"
],
"metadata": {
"id": "7y5cAfTLhteU"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"tabela_QP['QP'] = tabela_QP['QT_VOTOS_NOMINAIS_VALIDOS'] / tabela_QP['QE']\n",
"tabela_QP['QP_final'] = tabela_QP['QP'].astype(int)"
],
"metadata": {
"id": "La3-JEZFmwcY"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"def coeficiente_1(linha):\n",
" votos = linha['QT_VOTOS_NOMINAIS_VALIDOS']\n",
" estado = linha['SG_UF']\n",
" if votos < qe_dic[estado]*0.1:\n",
" return 'NAO'\n",
" else:\n",
" return 'SIM'\n",
"\n",
"def coeficiente_2(linha):\n",
" votos = linha['QT_VOTOS_NOMINAIS_VALIDOS']\n",
" estado = linha['SG_UF']\n",
" if votos < qe_dic[estado]*0.2:\n",
" return 'NAO'\n",
" else:\n",
" return 'SIM'\n",
"\n",
"votos_deputados['QE_1'] = votos_deputados.apply(coeficiente_1, axis=1)\n",
"votos_deputados['QE_2'] = votos_deputados.apply(coeficiente_2, axis=1)"
],
"metadata": {
"id": "Of9bOQGuqE0o"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"eleitos_por_QP = list()\n",
"for estado in ufs:\n",
" for sigla in tabela_QP.P_OU_F.unique():\n",
" if len(tabela_QP[(tabela_QP['SG_UF'] == estado)&(tabela_QP['P_OU_F'] == sigla)]) > 0:\n",
" charindex = tabela_QP[(tabela_QP['SG_UF'] == estado)&(tabela_QP['P_OU_F'] == sigla)].index[0]\n",
" chairs = tabela_QP[(tabela_QP['SG_UF'] == estado)&(tabela_QP['P_OU_F'] == sigla)].at[charindex,'QP_final']\n",
" eleitos_temp = votos_deputados[(votos_deputados.QE_1 == 'SIM')&(votos_deputados.P_OU_F == sigla)&(votos_deputados.SG_UF == estado)].sort_values(by='QT_VOTOS_NOMINAIS_VALIDOS',ascending=False).head(chairs).SQ_CANDIDATO.to_list()\n",
" if len(eleitos_temp) < chairs:\n",
" print(chairs)\n",
" print(estado,sigla)\n",
" eleitos_por_QP = eleitos_por_QP + eleitos_temp"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "V6djpbI6saxL",
"outputId": "1b5055c3-3f3b-495f-a26b-70181bfe49d7"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"2\n",
"PR PODE\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"tabela_QP.at[398,'QP_final'] = tabela_QP.at[398,'QP_final'] - 1"
],
"metadata": {
"id": "fApOSOOHlr2Q"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"tabela_QP = tabela_QP[tabela_QP.QP >= 0.8]"
],
"metadata": {
"id": "j7kgjtCpA5Vt"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"estoque = votos_deputados[(~votos_deputados.SQ_CANDIDATO.isin(eleitos_por_QP))&(votos_deputados.QE_2 == 'SIM')].groupby(['SG_UF','P_OU_F']).count()['SQ_CANDIDATO'].to_dict()"
],
"metadata": {
"id": "uDBnX2UMFN4Y"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"tabela_QP['V_MEDIA'] = 0"
],
"metadata": {
"id": "HIzukrUcGRlQ"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"tabela_QP['media_sobra'] = tabela_QP['QT_VOTOS_NOMINAIS_VALIDOS'] / (tabela_QP['QP_final'] + 1)"
],
"metadata": {
"id": "p_iCTyNujONZ"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"for x in ufs:\n",
" vagas = cadeiras[x] - tabela_QP[tabela_QP.SG_UF == x]['QP_final'].sum()\n",
" estoque_geral = 0\n",
" for y in tabela_QP[tabela_QP.SG_UF==x].P_OU_F.unique():\n",
" if (x,y) in estoque:\n",
" estoque_geral = estoque_geral + estoque[x,y]\n",
" if estoque_geral > vagas:\n",
" vezes_volta = vagas\n",
" else:\n",
" vezes_volta = estoque_geral\n",
" for vezes in range(vezes_volta):\n",
" partido = tabela_QP[tabela_QP.SG_UF==x].sort_values(by='media_sobra',ascending=False).reset_index().loc[0,'P_OU_F']\n",
" contador = 0\n",
" while (x,partido) not in estoque or estoque[x,partido] == 0:\n",
" contador = contador + 1\n",
" print(x, partido)\n",
" partido = tabela_QP[tabela_QP.SG_UF==x].sort_values(by='media_sobra',ascending=False).reset_index().loc[contador,'P_OU_F']\n",
" chave = tabela_QP[(tabela_QP.SG_UF == x)&(tabela_QP.P_OU_F == partido)].index[0]\n",
" tabela_QP.at[chave,'QP_final'] = tabela_QP.at[chave,'QP_final'] + 1\n",
" tabela_QP.at[chave,'V_MEDIA'] = tabela_QP.at[chave,'V_MEDIA'] + 1\n",
" tabela_QP['media_sobra'] = tabela_QP['QT_VOTOS_NOMINAIS_VALIDOS'] / (tabela_QP['QP_final'] + 1)\n",
" estoque[x,partido] = (estoque[x,partido]-1)"
],
"metadata": {
"id": "TnCLJzXA5uFH"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"dic_media = tabela_QP.set_index(['SG_UF','P_OU_F'])['V_MEDIA'].to_dict()"
],
"metadata": {
"id": "6YXcAz0SNWZU"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"tabela_QP.V_MEDIA.sum()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "CG1OtD7RMaBN",
"outputId": "9ec1d9ba-727e-4fe2-91c0-aa5e943ccc4a"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"169"
]
},
"metadata": {},
"execution_count": 385
}
]
},
{
"cell_type": "code",
"source": [
"eleitos_por_media = list()\n",
"for (x,y) in dic_media:\n",
" if dic_media[x,y] > 0:\n",
" con = dic_media[x,y]\n",
" eleitos_por_media_temp = list(votos_deputados[(~votos_deputados.SQ_CANDIDATO.isin(eleitos_por_QP))&(votos_deputados.QE_2 == 'SIM')&(votos_deputados.SG_UF == x)&(votos_deputados.P_OU_F == y)].sort_values(by='QT_VOTOS_NOMINAIS_VALIDOS',ascending=False).head(con).SQ_CANDIDATO.unique())\n",
" eleitos_por_media = eleitos_por_media + eleitos_por_media_temp"
],
"metadata": {
"id": "vygk1KtbNNct"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"len(eleitos_por_media)"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "uGMDmbieg0dn",
"outputId": "88a4215d-9f86-414a-ad1a-3832082ac1f2"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"169"
]
},
"metadata": {},
"execution_count": 387
}
]
},
{
"cell_type": "code",
"source": [
"restantes = tabela_QP.groupby('SG_UF').sum()[['QP_final','V_MEDIA']].reset_index()\n",
"restantes['cadeiras'] = restantes['SG_UF'].map(cadeiras)\n",
"restantes['faltou'] = restantes['cadeiras'] - restantes['QP_final']\n",
"resto_dic = restantes.set_index('SG_UF')['faltou'].to_dict()"
],
"metadata": {
"id": "Zwo84NRbUAC6"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"for x in resto_dic:\n",
" if resto_dic[x] > 0:\n",
" eleitos_por_media_temp = list(votos_deputados[(~votos_deputados.SQ_CANDIDATO.isin(eleitos_por_QP))&(~votos_deputados.SQ_CANDIDATO.isin(eleitos_por_media))&(votos_deputados.SG_UF == x)].sort_values(by='QT_VOTOS_NOMINAIS_VALIDOS',ascending=False).head(resto_dic[x]).SQ_CANDIDATO.unique())\n",
" eleitos_por_media = eleitos_por_media + eleitos_por_media_temp"
],
"metadata": {
"id": "TxI6I5_yUlOy"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"def minha_conta(linha):\n",
" sq = linha['SQ_CANDIDATO']\n",
" if sq in eleitos_por_QP:\n",
" return 'QP'\n",
" if sq in eleitos_por_media:\n",
" return 'MEDIA'\n",
" else:\n",
" return 'NAO ELEITO'\n",
"\n",
"votos_deputados['RESULTADO'] = votos_deputados.apply(minha_conta,axis=1)"
],
"metadata": {
"id": "P2dwQOnriOen"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"votos_deputados[votos_deputados['RESULTADO'].isin(['MEDIA','QP'])].DS_SIT_TOT_TURNO.value_counts()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "quc20cobmHuf",
"outputId": "4f831f15-aefd-47a5-8f5d-7c99304e352c"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"ELEITO POR QP 336\n",
"ELEITO POR MÉDIA 162\n",
"NÃO ELEITO 10\n",
"SUPLENTE 5\n",
"Name: DS_SIT_TOT_TURNO, dtype: int64"
]
},
"metadata": {},
"execution_count": 396
}
]
},
{
"cell_type": "code",
"source": [
"votos_deputados[(~votos_deputados['DS_SIT_TOT_TURNO'].isin(['NÃO ELEITO','SUPLENTE']))&(~votos_deputados['RESULTADO'].isin(['MEDIA','QP']))]"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 564
},
"id": "eTkRxk-Fma5v",
"outputId": "80bb0eac-026c-4908-cc50-5c5c31662428"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" SQ_CANDIDATO NM_CANDIDATO SG_FEDERACAO \\\n",
"139 20001610332 PAULO FERNANDO DOS SANTOS PT/PC do B/PV \n",
"303 30001601833 MARIA GORETH DA SILVA E SOUSA #NULO# \n",
"321 30001605452 JOSÉ AUGUSTO PUPIO REIS JÚNIOR #NULO# \n",
"391 30001648510 SILVIA NOBRE LOPES #NULO# \n",
"397 30001648516 SONIZE PIMENTEL DOS SANTOS BARBOSA #NULO# \n",
"1661 70001615669 GILVAM MAXIMO #NULO# \n",
"1670 70001615924 JOÃO ALBERTO FRAGA SILVA #NULO# \n",
"2085 90001621102 MARUSSA CASSIA FAVARO BOLDRIN #NULO# \n",
"5382 170001619891 FELIPE AUGUSTO LYRA CARRERAS #NULO# \n",
"6208 190001619218 REIMONT LUIZ OTONI SANTA BÁRBARA PT/PC do B/PV \n",
"7248 210001621256 AFONSO ANTUNES DA MOTTA #NULO# \n",
"7437 220001605553 JOSÉ EURIPEDES CLEMENTE #NULO# \n",
"7720 240001602681 RAFAEL PEZENTI #NULO# \n",
"8361 250001610668 LUIZ PAULO TEIXEIRA FERREIRA PT/PC do B/PV \n",
"9595 270001643406 LAZARO BOTELHO MARTINS #NULO# \n",
"\n",
" SG_PARTIDO DS_SIT_TOT_TURNO SG_UF QT_VOTOS_NOMINAIS_VALIDOS \\\n",
"139 PT ELEITO POR MÉDIA AL 65814 \n",
"303 PDT ELEITO POR MÉDIA AP 8409 \n",
"321 MDB ELEITO POR MÉDIA AP 5787 \n",
"391 PL ELEITO POR MÉDIA AP 5435 \n",
"397 PL ELEITO POR MÉDIA AP 9200 \n",
"1661 REPUBLICANOS ELEITO POR MÉDIA DF 20923 \n",
"1670 PL ELEITO POR MÉDIA DF 28825 \n",
"2085 MDB ELEITO POR MÉDIA GO 80464 \n",
"5382 PSB ELEITO POR MÉDIA PE 76528 \n",
"6208 PT ELEITO POR MÉDIA RJ 39325 \n",
"7248 PDT ELEITO POR MÉDIA RS 70307 \n",
"7437 UNIÃO ELEITO POR MÉDIA RO 12607 \n",
"7720 MDB ELEITO POR MÉDIA SC 68208 \n",
"8361 PT ELEITO POR MÉDIA SP 122800 \n",
"9595 PP ELEITO POR MÉDIA TO 13668 \n",
"\n",
" P_OU_F QE_1 QE_2 RESULTADO \n",
"139 PT/PC do B/PV SIM SIM NAO ELEITO \n",
"303 PDT SIM NAO NAO ELEITO \n",
"321 MDB SIM NAO NAO ELEITO \n",
"391 PL SIM NAO NAO ELEITO \n",
"397 PL SIM NAO NAO ELEITO \n",
"1661 REPUBLICANOS SIM NAO NAO ELEITO \n",
"1670 PL SIM NAO NAO ELEITO \n",
"2085 MDB SIM SIM NAO ELEITO \n",
"5382 PSB SIM SIM NAO ELEITO \n",
"6208 PT/PC do B/PV SIM SIM NAO ELEITO \n",
"7248 PDT SIM SIM NAO ELEITO \n",
"7437 UNIÃO SIM NAO NAO ELEITO \n",
"7720 MDB SIM SIM NAO ELEITO \n",
"8361 PT/PC do B/PV SIM SIM NAO ELEITO \n",
"9595 PP SIM NAO NAO ELEITO "
],
"text/html": [
"\n",
" <div id=\"df-18b78490-541a-4e1d-857c-406f84020eb9\">\n",
" <div class=\"colab-df-container\">\n",
" <div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>SQ_CANDIDATO</th>\n",
" <th>NM_CANDIDATO</th>\n",
" <th>SG_FEDERACAO</th>\n",
" <th>SG_PARTIDO</th>\n",
" <th>DS_SIT_TOT_TURNO</th>\n",
" <th>SG_UF</th>\n",
" <th>QT_VOTOS_NOMINAIS_VALIDOS</th>\n",
" <th>P_OU_F</th>\n",
" <th>QE_1</th>\n",
" <th>QE_2</th>\n",
" <th>RESULTADO</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>139</th>\n",
" <td>20001610332</td>\n",
" <td>PAULO FERNANDO DOS SANTOS</td>\n",
" <td>PT/PC do B/PV</td>\n",
" <td>PT</td>\n",
" <td>ELEITO POR MÉDIA</td>\n",
" <td>AL</td>\n",
" <td>65814</td>\n",
" <td>PT/PC do B/PV</td>\n",
" <td>SIM</td>\n",
" <td>SIM</td>\n",
" <td>NAO ELEITO</td>\n",
" </tr>\n",
" <tr>\n",
" <th>303</th>\n",
" <td>30001601833</td>\n",
" <td>MARIA GORETH DA SILVA E SOUSA</td>\n",
" <td>#NULO#</td>\n",
" <td>PDT</td>\n",
" <td>ELEITO POR MÉDIA</td>\n",
" <td>AP</td>\n",
" <td>8409</td>\n",
" <td>PDT</td>\n",
" <td>SIM</td>\n",
" <td>NAO</td>\n",
" <td>NAO ELEITO</td>\n",
" </tr>\n",
" <tr>\n",
" <th>321</th>\n",
" <td>30001605452</td>\n",
" <td>JOSÉ AUGUSTO PUPIO REIS JÚNIOR</td>\n",
" <td>#NULO#</td>\n",
" <td>MDB</td>\n",
" <td>ELEITO POR MÉDIA</td>\n",
" <td>AP</td>\n",
" <td>5787</td>\n",
" <td>MDB</td>\n",
" <td>SIM</td>\n",
" <td>NAO</td>\n",
" <td>NAO ELEITO</td>\n",
" </tr>\n",
" <tr>\n",
" <th>391</th>\n",
" <td>30001648510</td>\n",
" <td>SILVIA NOBRE LOPES</td>\n",
" <td>#NULO#</td>\n",
" <td>PL</td>\n",
" <td>ELEITO POR MÉDIA</td>\n",
" <td>AP</td>\n",
" <td>5435</td>\n",
" <td>PL</td>\n",
" <td>SIM</td>\n",
" <td>NAO</td>\n",
" <td>NAO ELEITO</td>\n",
" </tr>\n",
" <tr>\n",
" <th>397</th>\n",
" <td>30001648516</td>\n",
" <td>SONIZE PIMENTEL DOS SANTOS BARBOSA</td>\n",
" <td>#NULO#</td>\n",
" <td>PL</td>\n",
" <td>ELEITO POR MÉDIA</td>\n",
" <td>AP</td>\n",
" <td>9200</td>\n",
" <td>PL</td>\n",
" <td>SIM</td>\n",
" <td>NAO</td>\n",
" <td>NAO ELEITO</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1661</th>\n",
" <td>70001615669</td>\n",
" <td>GILVAM MAXIMO</td>\n",
" <td>#NULO#</td>\n",
" <td>REPUBLICANOS</td>\n",
" <td>ELEITO POR MÉDIA</td>\n",
" <td>DF</td>\n",
" <td>20923</td>\n",
" <td>REPUBLICANOS</td>\n",
" <td>SIM</td>\n",
" <td>NAO</td>\n",
" <td>NAO ELEITO</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1670</th>\n",
" <td>70001615924</td>\n",
" <td>JOÃO ALBERTO FRAGA SILVA</td>\n",
" <td>#NULO#</td>\n",
" <td>PL</td>\n",
" <td>ELEITO POR MÉDIA</td>\n",
" <td>DF</td>\n",
" <td>28825</td>\n",
" <td>PL</td>\n",
" <td>SIM</td>\n",
" <td>NAO</td>\n",
" <td>NAO ELEITO</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2085</th>\n",
" <td>90001621102</td>\n",
" <td>MARUSSA CASSIA FAVARO BOLDRIN</td>\n",
" <td>#NULO#</td>\n",
" <td>MDB</td>\n",
" <td>ELEITO POR MÉDIA</td>\n",
" <td>GO</td>\n",
" <td>80464</td>\n",
" <td>MDB</td>\n",
" <td>SIM</td>\n",
" <td>SIM</td>\n",
" <td>NAO ELEITO</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5382</th>\n",
" <td>170001619891</td>\n",
" <td>FELIPE AUGUSTO LYRA CARRERAS</td>\n",
" <td>#NULO#</td>\n",
" <td>PSB</td>\n",
" <td>ELEITO POR MÉDIA</td>\n",
" <td>PE</td>\n",
" <td>76528</td>\n",
" <td>PSB</td>\n",
" <td>SIM</td>\n",
" <td>SIM</td>\n",
" <td>NAO ELEITO</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6208</th>\n",
" <td>190001619218</td>\n",
" <td>REIMONT LUIZ OTONI SANTA BÁRBARA</td>\n",
" <td>PT/PC do B/PV</td>\n",
" <td>PT</td>\n",
" <td>ELEITO POR MÉDIA</td>\n",
" <td>RJ</td>\n",
" <td>39325</td>\n",
" <td>PT/PC do B/PV</td>\n",
" <td>SIM</td>\n",
" <td>SIM</td>\n",
" <td>NAO ELEITO</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7248</th>\n",
" <td>210001621256</td>\n",
" <td>AFONSO ANTUNES DA MOTTA</td>\n",
" <td>#NULO#</td>\n",
" <td>PDT</td>\n",
" <td>ELEITO POR MÉDIA</td>\n",
" <td>RS</td>\n",
" <td>70307</td>\n",
" <td>PDT</td>\n",
" <td>SIM</td>\n",
" <td>SIM</td>\n",
" <td>NAO ELEITO</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7437</th>\n",
" <td>220001605553</td>\n",
" <td>JOSÉ EURIPEDES CLEMENTE</td>\n",
" <td>#NULO#</td>\n",
" <td>UNIÃO</td>\n",
" <td>ELEITO POR MÉDIA</td>\n",
" <td>RO</td>\n",
" <td>12607</td>\n",
" <td>UNIÃO</td>\n",
" <td>SIM</td>\n",
" <td>NAO</td>\n",
" <td>NAO ELEITO</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7720</th>\n",
" <td>240001602681</td>\n",
" <td>RAFAEL PEZENTI</td>\n",
" <td>#NULO#</td>\n",
" <td>MDB</td>\n",
" <td>ELEITO POR MÉDIA</td>\n",
" <td>SC</td>\n",
" <td>68208</td>\n",
" <td>MDB</td>\n",
" <td>SIM</td>\n",
" <td>SIM</td>\n",
" <td>NAO ELEITO</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8361</th>\n",
" <td>250001610668</td>\n",
" <td>LUIZ PAULO TEIXEIRA FERREIRA</td>\n",
" <td>PT/PC do B/PV</td>\n",
" <td>PT</td>\n",
" <td>ELEITO POR MÉDIA</td>\n",
" <td>SP</td>\n",
" <td>122800</td>\n",
" <td>PT/PC do B/PV</td>\n",
" <td>SIM</td>\n",
" <td>SIM</td>\n",
" <td>NAO ELEITO</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9595</th>\n",
" <td>270001643406</td>\n",
" <td>LAZARO BOTELHO MARTINS</td>\n",
" <td>#NULO#</td>\n",
" <td>PP</td>\n",
" <td>ELEITO POR MÉDIA</td>\n",
" <td>TO</td>\n",
" <td>13668</td>\n",
" <td>PP</td>\n",
" <td>SIM</td>\n",
" <td>NAO</td>\n",
" <td>NAO ELEITO</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>\n",
" <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-18b78490-541a-4e1d-857c-406f84020eb9')\"\n",
" title=\"Convert this dataframe to an interactive table.\"\n",
" style=\"display:none;\">\n",
" \n",
" <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
" width=\"24px\">\n",
" <path d=\"M0 0h24v24H0V0z\" fill=\"none\"/>\n",
" <path d=\"M18.56 5.44l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94zm-11 1L8.5 8.5l.94-2.06 2.06-.94-2.06-.94L8.5 2.5l-.94 2.06-2.06.94zm10 10l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94z\"/><path d=\"M17.41 7.96l-1.37-1.37c-.4-.4-.92-.59-1.43-.59-.52 0-1.04.2-1.43.59L10.3 9.45l-7.72 7.72c-.78.78-.78 2.05 0 2.83L4 21.41c.39.39.9.59 1.41.59.51 0 1.02-.2 1.41-.59l7.78-7.78 2.81-2.81c.8-.78.8-2.07 0-2.86zM5.41 20L4 18.59l7.72-7.72 1.47 1.35L5.41 20z\"/>\n",
" </svg>\n",
" </button>\n",
" \n",
" <style>\n",
" .colab-df-container {\n",
" display:flex;\n",
" flex-wrap:wrap;\n",
" gap: 12px;\n",
" }\n",
"\n",
" .colab-df-convert {\n",
" background-color: #E8F0FE;\n",
" border: none;\n",
" border-radius: 50%;\n",
" cursor: pointer;\n",
" display: none;\n",
" fill: #1967D2;\n",
" height: 32px;\n",
" padding: 0 0 0 0;\n",
" width: 32px;\n",
" }\n",
"\n",
" .colab-df-convert:hover {\n",
" background-color: #E2EBFA;\n",
" box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
" fill: #174EA6;\n",
" }\n",
"\n",
" [theme=dark] .colab-df-convert {\n",
" background-color: #3B4455;\n",
" fill: #D2E3FC;\n",
" }\n",
"\n",
" [theme=dark] .colab-df-convert:hover {\n",
" background-color: #434B5C;\n",
" box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
" filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
" fill: #FFFFFF;\n",
" }\n",
" </style>\n",
"\n",
" <script>\n",
" const buttonEl =\n",
" document.querySelector('#df-18b78490-541a-4e1d-857c-406f84020eb9 button.colab-df-convert');\n",
" buttonEl.style.display =\n",
" google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
"\n",
" async function convertToInteractive(key) {\n",
" const element = document.querySelector('#df-18b78490-541a-4e1d-857c-406f84020eb9');\n",
" const dataTable =\n",
" await google.colab.kernel.invokeFunction('convertToInteractive',\n",
" [key], {});\n",
" if (!dataTable) return;\n",
"\n",
" const docLinkHtml = 'Like what you see? Visit the ' +\n",
" '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
" + ' to learn more about interactive tables.';\n",
" element.innerHTML = '';\n",
" dataTable['output_type'] = 'display_data';\n",
" await google.colab.output.renderOutput(dataTable, element);\n",
" const docLink = document.createElement('div');\n",
" docLink.innerHTML = docLinkHtml;\n",
" element.appendChild(docLink);\n",
" }\n",
" </script>\n",
" </div>\n",
" </div>\n",
" "
]
},
"metadata": {},
"execution_count": 399
}
]
},
{
"cell_type": "code",
"source": [],
"metadata": {
"id": "mgmj5NEqma8l"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"len(votos_deputados[(votos_deputados.DS_SIT_TOT_TURNO == 'ELEITO POR QP')|(votos_deputados.DS_SIT_TOT_TURNO == 'ELEITO POR MÉDIA')].P_OU_F.unique())"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "8XFGSx6aiOjS",
"outputId": "85414086-98bd-4da3-fbf8-a43c2bf92fad"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"19"
]
},
"metadata": {},
"execution_count": 365
}
]
},
{
"cell_type": "code",
"source": [
"votos_deputados[(votos_deputados.DS_SIT_TOT_TURNO == 'ELEITO POR QP')|(votos_deputados.DS_SIT_TOT_TURNO == 'ELEITO POR MÉDIA')].P_OU_F.value_counts()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "aRMd8EJhito4",
"outputId": "401d7ccd-5ac9-45e0-efdb-8aaa0592272e"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"PL 99\n",
"PT/PC do B/PV 80\n",
"UNIÃO 59\n",
"PP 47\n",
"MDB 42\n",
"PSD 42\n",
"REPUBLICANOS 41\n",
"PSDB/CIDADANIA 18\n",
"PDT 17\n",
"PSOL/REDE 14\n",
"PSB 14\n",
"PODE 12\n",
"AVANTE 7\n",
"PSC 6\n",
"PATRIOTA 4\n",
"SOLIDARIEDADE 4\n",
"PROS 3\n",
"NOVO 3\n",
"PTB 1\n",
"Name: P_OU_F, dtype: int64"
]
},
"metadata": {},
"execution_count": 367
}
]
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment