Skip to content

Instantly share code, notes, and snippets.

@BurgosNY
Created July 3, 2021 16:43
Show Gist options
  • Save BurgosNY/2eab110ca1e09c5020291056ee794a28 to your computer and use it in GitHub Desktop.
Save BurgosNY/2eab110ca1e09c5020291056ee794a28 to your computer and use it in GitHub Desktop.
Uma breve exploração das bases do DataSUS e o que elas podem revelar (ou não) sobre irregularidades na campanha de vacinação.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Explorando microdados de vacinação\n",
"\n",
"Refazendo os passos de [reportagem publicada na Folha de S. Paulo](https://www1.folha.uol.com.br/equilibrioesaude/2021/07/milhares-no-brasil-tomaram-vacina-vencida-contra-covid-veja-se-voce-e-um-deles.shtml) em 3/7/21.\n",
"\n",
"Leia o [dicionário de dados](https://opendatasus.saude.gov.br/dataset/b772ee55-07cd-44d8-958f-b12edd004e0b/resource/38ead83d-b115-4219-852e-7244792bc311/download/dicionario-de-dados-vacinacao.pdf)\n",
"Fonte: [OpendataSUS](https://opendatasus.saude.gov.br/dataset/covid-19-vacinacao/resource/ef3bd0b8-b605-474b-9ae5-c97390c197a8)"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"# Raspando o site para pegar a lista de arquivos para baixar\n",
"\n",
"from bs4 import BeautifulSoup as bs\n",
"import requests\n",
"\n",
"soup = bs(requests.get(\"https://opendatasus.saude.gov.br/dataset/covid-19-vacinacao/resource/ef3bd0b8-b605-474b-9ae5-c97390c197a8\").content, \"html.parser\")\n",
"lista = soup.find_all(\"ul\")[3]\n",
"arquivos_estados = [x['href'] for x in lista.find_all(\"a\")[1:]]"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'https://s3-sa-east-1.amazonaws.com/ckan.saude.gov.br/PNI/vacina/uf/2021-07-02/uf%3DAC/part-00000-57d29585-170c-45f1-93f1-934979b3df16.c000.csv'"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"arquivos_estados[0]"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"from wget import download\n",
"import pandas as pd\n",
"import os\n",
"import operator\n",
"\n",
"# Essa função baixa o arquivo e cria um dataframe daquele estado. \n",
"# Mais adiante podemos colocá-la em um loop que irá processar todos os estados.\n",
"\n",
"def processar_estado(url_arquivo):\n",
" download(url_arquivo)\n",
" filename = url_arquivo.split('/')[-1]\n",
" uf = arquivos_estados[0].split('uf%3D')[1][:2]\n",
" df = pd.read_csv(filename, sep=\";\")\n",
" os.remove(filename)\n",
" print(f'{uf} processado.')\n",
" return df\n"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"AC processado.\n"
]
}
],
"source": [
"# Arquivos podem ser gigantes. Fazendo primeiro teste com Acre\n",
"ac = processar_estado(arquivos_estados[0])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Como _estressar_ a base?\n",
"\n",
"Podemos fazer algumas perguntas à base para verificar a consistência dos dados. Por exemplo: temos muitas pessoas com mais de 100 ou com menos de 17 anos? "
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"paciente_idade\n",
"0 4\n",
"1 1\n",
"3 1\n",
"8 1\n",
"12 2\n",
"13 4\n",
"14 3\n",
"15 1\n",
"16 16\n",
"17 51\n",
"18 1891\n",
"19 2036\n",
"20 2317\n",
"21 2706\n",
"22 2932\n",
"23 3165\n",
"24 3302\n",
"25 3915\n",
"26 3932\n",
"27 3854\n",
"28 3860\n",
"29 3950\n",
"30 4576\n",
"31 4966\n",
"32 5151\n",
"33 5012\n",
"34 5153\n",
"35 6798\n",
"36 6860\n",
"37 7300\n",
"38 8380\n",
"39 8316\n",
"40 8563\n",
"41 8577\n",
"42 8227\n",
"43 7901\n",
"44 7413\n",
"45 7560\n",
"46 7375\n",
"47 7072\n",
"48 6730\n",
"49 6596\n",
"50 6741\n",
"51 6526\n",
"52 6014\n",
"53 5832\n",
"54 5966\n",
"55 6074\n",
"56 5585\n",
"57 5247\n",
"58 5150\n",
"59 5013\n",
"60 7034\n",
"61 7039\n",
"62 7168\n",
"63 7053\n",
"64 6807\n",
"65 6350\n",
"66 6081\n",
"67 5988\n",
"68 5674\n",
"69 5338\n",
"70 5493\n",
"71 4817\n",
"72 4444\n",
"73 4033\n",
"74 3723\n",
"75 3256\n",
"76 3359\n",
"77 2951\n",
"78 2743\n",
"79 2237\n",
"80 2323\n",
"81 2138\n",
"82 1832\n",
"83 1499\n",
"84 1362\n",
"85 1328\n",
"86 964\n",
"87 885\n",
"88 796\n",
"89 575\n",
"90 676\n",
"91 550\n",
"92 402\n",
"93 344\n",
"94 263\n",
"95 187\n",
"96 128\n",
"97 103\n",
"98 94\n",
"99 57\n",
"100 76\n",
"101 47\n",
"102 36\n",
"103 28\n",
"104 11\n",
"105 6\n",
"106 6\n",
"107 17\n",
"108 7\n",
"109 9\n",
"110 8\n",
"111 1\n",
"112 3\n",
"121 13\n",
"Name: paciente_id, dtype: int64"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Primeiro aumentamos o número de linhas disponíceis para mostrar:\n",
"pd.set_option('display.max_rows', 200)\n",
"\n",
"# Agrupamos por idade dos vacinados:\n",
"ac.groupby('paciente_idade')['paciente_id'].count()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Podemos, com base nesses dados, dizer que 13 pessoas com 121 anos foram vacinadas no Acre? Obviamente não, dado que a pessoa mais idosa do Brasil tinha, até ano passado, 115 e [morava no Ceará](https://g1.globo.com/ce/ceara/noticia/2020/07/10/cearense-de-115-anos-e-reconhecida-como-a-pessoa-mais-velha-do-brasil.ghtml). Essas linhas claramente foram preenchidas de forma errada. A hipótese mais lógica é que o campo de preenchimento tem o ano 1900 como padrão e não foi alterado.\n",
"\n",
"Entre os mais de 350 mil registros de vacinação nesta planilha, há 17 menores de 15 anos. Não é possível, depois de ler isso, dizer que \"Acre está vacinando crianças\". É provável que seja um erro. Mesmo que seja verdade, é preciso apurar."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Na [reportagem da Folha](https://www1.folha.uol.com.br/equilibrioesaude/2021/07/milhares-no-brasil-tomaram-vacina-vencida-contra-covid-veja-se-voce-e-um-deles.shtml), há 51 registros de _vacinas vencidas_ aplicadas em Xapuri. 50 delas em uma unidade de saúde específica. "
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Index(['document_id', 'paciente_id', 'paciente_idade',\n",
" 'paciente_datanascimento', 'paciente_enumsexobiologico',\n",
" 'paciente_racacor_codigo', 'paciente_racacor_valor',\n",
" 'paciente_endereco_coibgemunicipio', 'paciente_endereco_copais',\n",
" 'paciente_endereco_nmmunicipio', 'paciente_endereco_nmpais',\n",
" 'paciente_endereco_uf', 'paciente_endereco_cep',\n",
" 'paciente_nacionalidade_enumnacionalidade', 'estabelecimento_valor',\n",
" 'estabelecimento_razaosocial', 'estalecimento_nofantasia',\n",
" 'estabelecimento_municipio_codigo', 'estabelecimento_municipio_nome',\n",
" 'estabelecimento_uf', 'vacina_grupoatendimento_codigo',\n",
" 'vacina_grupoatendimento_nome', 'vacina_categoria_codigo',\n",
" 'vacina_categoria_nome', 'vacina_lote', 'vacina_fabricante_nome',\n",
" 'vacina_fabricante_referencia', 'vacina_dataaplicacao',\n",
" 'vacina_descricao_dose', 'vacina_codigo', 'vacina_nome',\n",
" 'sistema_origem', 'data_importacao_rnds', 'id_sistema_origem'],\n",
" dtype='object')"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Procuramos a coluna com o nome que está no estabelecimento\n",
"ac.columns"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<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>document_id</th>\n",
" <th>paciente_id</th>\n",
" <th>paciente_idade</th>\n",
" <th>paciente_datanascimento</th>\n",
" <th>paciente_enumsexobiologico</th>\n",
" <th>paciente_racacor_codigo</th>\n",
" <th>paciente_racacor_valor</th>\n",
" <th>paciente_endereco_coibgemunicipio</th>\n",
" <th>paciente_endereco_copais</th>\n",
" <th>paciente_endereco_nmmunicipio</th>\n",
" <th>...</th>\n",
" <th>vacina_lote</th>\n",
" <th>vacina_fabricante_nome</th>\n",
" <th>vacina_fabricante_referencia</th>\n",
" <th>vacina_dataaplicacao</th>\n",
" <th>vacina_descricao_dose</th>\n",
" <th>vacina_codigo</th>\n",
" <th>vacina_nome</th>\n",
" <th>sistema_origem</th>\n",
" <th>data_importacao_rnds</th>\n",
" <th>id_sistema_origem</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>68</th>\n",
" <td>0191ead7-b558-44eb-9cb5-d6ada8aced2b-i0b0</td>\n",
" <td>255c3b3825af5494129c9bafb98172f3fa5e4eb788dc99...</td>\n",
" <td>64</td>\n",
" <td>1956-04-28</td>\n",
" <td>F</td>\n",
" <td>3</td>\n",
" <td>PARDA</td>\n",
" <td>120070.0</td>\n",
" <td>10.0</td>\n",
" <td>XAPURI</td>\n",
" <td>...</td>\n",
" <td>210077</td>\n",
" <td>FUNDACAO BUTANTAN</td>\n",
" <td>Organization/61189445000156</td>\n",
" <td>2021-04-05</td>\n",
" <td>1ª Dose</td>\n",
" <td>86</td>\n",
" <td>Covid-19-Coronavac-Sinovac/Butantan</td>\n",
" <td>Novo PNI</td>\n",
" <td>2021-04-10T01:52:51.000Z</td>\n",
" <td>16341</td>\n",
" </tr>\n",
" <tr>\n",
" <th>87</th>\n",
" <td>a6e6f0a7-ab67-4b94-9c05-df26a0aa54ef-i0b0</td>\n",
" <td>aed7c8cc98716f027f0b318a2196a448a349f27b9a2017...</td>\n",
" <td>47</td>\n",
" <td>1973-12-10</td>\n",
" <td>F</td>\n",
" <td>3</td>\n",
" <td>PARDA</td>\n",
" <td>120070.0</td>\n",
" <td>10.0</td>\n",
" <td>XAPURI</td>\n",
" <td>...</td>\n",
" <td>210015</td>\n",
" <td>FUNDACAO BUTANTAN</td>\n",
" <td>Organization/61189445000156</td>\n",
" <td>2021-05-08</td>\n",
" <td>2ª Dose</td>\n",
" <td>86</td>\n",
" <td>Covid-19-Coronavac-Sinovac/Butantan</td>\n",
" <td>Novo PNI</td>\n",
" <td>2021-05-11T19:52:44.000Z</td>\n",
" <td>16341</td>\n",
" </tr>\n",
" <tr>\n",
" <th>106</th>\n",
" <td>036096d5-fc9c-4a94-8406-794cb57232a9-i0b0</td>\n",
" <td>16da6e89d2dc23d31edfbb488c33fdcf05fe7f8d44734f...</td>\n",
" <td>51</td>\n",
" <td>1969-09-27</td>\n",
" <td>F</td>\n",
" <td>4</td>\n",
" <td>AMARELA</td>\n",
" <td>120070.0</td>\n",
" <td>10.0</td>\n",
" <td>XAPURI</td>\n",
" <td>...</td>\n",
" <td>210012</td>\n",
" <td>FUNDACAO BUTANTAN</td>\n",
" <td>Organization/61189445000156</td>\n",
" <td>2021-05-21</td>\n",
" <td>1ª Dose</td>\n",
" <td>86</td>\n",
" <td>Covid-19-Coronavac-Sinovac/Butantan</td>\n",
" <td>Novo PNI</td>\n",
" <td>2021-05-24T14:37:15.000Z</td>\n",
" <td>16341</td>\n",
" </tr>\n",
" <tr>\n",
" <th>177</th>\n",
" <td>e8a9777d-0233-4dc2-8566-779cd38c0529-i0b0</td>\n",
" <td>7c689b5b743093956561e63c49e52ff803bb699b676e35...</td>\n",
" <td>68</td>\n",
" <td>1952-06-19</td>\n",
" <td>F</td>\n",
" <td>3</td>\n",
" <td>PARDA</td>\n",
" <td>120070.0</td>\n",
" <td>10.0</td>\n",
" <td>XAPURI</td>\n",
" <td>...</td>\n",
" <td>210110</td>\n",
" <td>FUNDACAO BUTANTAN</td>\n",
" <td>Organization/61189445000156</td>\n",
" <td>2021-04-27</td>\n",
" <td>2ª Dose</td>\n",
" <td>86</td>\n",
" <td>Covid-19-Coronavac-Sinovac/Butantan</td>\n",
" <td>Novo PNI</td>\n",
" <td>2021-04-27T20:31:05.000Z</td>\n",
" <td>16341</td>\n",
" </tr>\n",
" <tr>\n",
" <th>222</th>\n",
" <td>b7e1a847-ad57-4d08-b5b2-e99c4562d37f-i0b0</td>\n",
" <td>ab8b25387ade33ca12754a2090df6a2ec4d89e63e99970...</td>\n",
" <td>59</td>\n",
" <td>1961-11-25</td>\n",
" <td>F</td>\n",
" <td>3</td>\n",
" <td>PARDA</td>\n",
" <td>120070.0</td>\n",
" <td>10.0</td>\n",
" <td>XAPURI</td>\n",
" <td>...</td>\n",
" <td>213VCD027Z</td>\n",
" <td>FUNDACAO OSWALDO CRUZ</td>\n",
" <td>Organization/33781055000135</td>\n",
" <td>2021-05-06</td>\n",
" <td>1ª Dose</td>\n",
" <td>85</td>\n",
" <td>Vacina Covid-19 - Covishield</td>\n",
" <td>Novo PNI</td>\n",
" <td>2021-05-07T15:02:58.000Z</td>\n",
" <td>16341</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>352782</th>\n",
" <td>bfe8645d-349e-4d50-8c80-e9cc79440e85-i0b0</td>\n",
" <td>04b79b88113b4b90f8044cbb8b7a7e722d9e95d71c31f7...</td>\n",
" <td>66</td>\n",
" <td>1955-01-30</td>\n",
" <td>M</td>\n",
" <td>3</td>\n",
" <td>PARDA</td>\n",
" <td>120070.0</td>\n",
" <td>10.0</td>\n",
" <td>XAPURI</td>\n",
" <td>...</td>\n",
" <td>210044</td>\n",
" <td>FUNDACAO BUTANTAN</td>\n",
" <td>Organization/61189445000156</td>\n",
" <td>2021-04-05</td>\n",
" <td>2ª Dose</td>\n",
" <td>86</td>\n",
" <td>Covid-19-Coronavac-Sinovac/Butantan</td>\n",
" <td>Novo PNI</td>\n",
" <td>2021-04-14T21:06:24.000Z</td>\n",
" <td>16341</td>\n",
" </tr>\n",
" <tr>\n",
" <th>352800</th>\n",
" <td>9e4755f2-3212-48fd-a3b0-a9456df66df0-i0b0</td>\n",
" <td>f57de71ef7e4ba1c5b517e234295aeb78d6e4d7d24c693...</td>\n",
" <td>64</td>\n",
" <td>1957-03-04</td>\n",
" <td>M</td>\n",
" <td>99</td>\n",
" <td>SEM INFORMACAO</td>\n",
" <td>120070.0</td>\n",
" <td>10.0</td>\n",
" <td>XAPURI</td>\n",
" <td>...</td>\n",
" <td>210015</td>\n",
" <td>FUNDACAO BUTANTAN</td>\n",
" <td>Organization/61189445000156</td>\n",
" <td>2021-05-05</td>\n",
" <td>2ª Dose</td>\n",
" <td>86</td>\n",
" <td>Covid-19-Coronavac-Sinovac/Butantan</td>\n",
" <td>Novo PNI</td>\n",
" <td>2021-05-07T19:30:20.000Z</td>\n",
" <td>16341</td>\n",
" </tr>\n",
" <tr>\n",
" <th>352868</th>\n",
" <td>aa9ac254-3e50-4a7b-ba20-83b475147255-i0b0</td>\n",
" <td>3039b36281f201f924698453c72c98a98733119acffc15...</td>\n",
" <td>60</td>\n",
" <td>1960-09-01</td>\n",
" <td>F</td>\n",
" <td>4</td>\n",
" <td>AMARELA</td>\n",
" <td>120070.0</td>\n",
" <td>10.0</td>\n",
" <td>XAPURI</td>\n",
" <td>...</td>\n",
" <td>202010040</td>\n",
" <td>FUNDACAO BUTANTAN</td>\n",
" <td>Organization/61189445000156</td>\n",
" <td>2021-05-12</td>\n",
" <td>2ª Dose</td>\n",
" <td>86</td>\n",
" <td>Covid-19-Coronavac-Sinovac/Butantan</td>\n",
" <td>Novo PNI</td>\n",
" <td>2021-05-12T20:49:32.000Z</td>\n",
" <td>16341</td>\n",
" </tr>\n",
" <tr>\n",
" <th>352909</th>\n",
" <td>a0b80f5c-14f6-4a6a-a86e-5732ab49eb36-i0b0</td>\n",
" <td>af8d5ea0f8163acbf2902ccbb9ed108623d01b94d160af...</td>\n",
" <td>59</td>\n",
" <td>1962-04-06</td>\n",
" <td>F</td>\n",
" <td>3</td>\n",
" <td>PARDA</td>\n",
" <td>120040.0</td>\n",
" <td>10.0</td>\n",
" <td>RIO BRANCO</td>\n",
" <td>...</td>\n",
" <td>210110</td>\n",
" <td>FUNDACAO BUTANTAN</td>\n",
" <td>Organization/61189445000156</td>\n",
" <td>2021-05-08</td>\n",
" <td>2ª Dose</td>\n",
" <td>86</td>\n",
" <td>Covid-19-Coronavac-Sinovac/Butantan</td>\n",
" <td>Novo PNI</td>\n",
" <td>2021-05-12T13:48:53.000Z</td>\n",
" <td>16341</td>\n",
" </tr>\n",
" <tr>\n",
" <th>352937</th>\n",
" <td>dc7a5b14-3b5c-4f56-af5b-c3d989aa4e35-i0b0</td>\n",
" <td>7a4d522c30a5d660d33eb0ad8b84c06fd8d22a6844dd4a...</td>\n",
" <td>71</td>\n",
" <td>1950-04-19</td>\n",
" <td>F</td>\n",
" <td>4</td>\n",
" <td>AMARELA</td>\n",
" <td>120070.0</td>\n",
" <td>10.0</td>\n",
" <td>XAPURI</td>\n",
" <td>...</td>\n",
" <td>210012</td>\n",
" <td>FUNDACAO BUTANTAN</td>\n",
" <td>Organization/61189445000156</td>\n",
" <td>2021-05-17</td>\n",
" <td>2ª Dose</td>\n",
" <td>86</td>\n",
" <td>Covid-19-Coronavac-Sinovac/Butantan</td>\n",
" <td>Novo PNI</td>\n",
" <td>2021-05-18T15:58:53.000Z</td>\n",
" <td>16341</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>6815 rows × 34 columns</p>\n",
"</div>"
],
"text/plain": [
" document_id \\\n",
"68 0191ead7-b558-44eb-9cb5-d6ada8aced2b-i0b0 \n",
"87 a6e6f0a7-ab67-4b94-9c05-df26a0aa54ef-i0b0 \n",
"106 036096d5-fc9c-4a94-8406-794cb57232a9-i0b0 \n",
"177 e8a9777d-0233-4dc2-8566-779cd38c0529-i0b0 \n",
"222 b7e1a847-ad57-4d08-b5b2-e99c4562d37f-i0b0 \n",
"... ... \n",
"352782 bfe8645d-349e-4d50-8c80-e9cc79440e85-i0b0 \n",
"352800 9e4755f2-3212-48fd-a3b0-a9456df66df0-i0b0 \n",
"352868 aa9ac254-3e50-4a7b-ba20-83b475147255-i0b0 \n",
"352909 a0b80f5c-14f6-4a6a-a86e-5732ab49eb36-i0b0 \n",
"352937 dc7a5b14-3b5c-4f56-af5b-c3d989aa4e35-i0b0 \n",
"\n",
" paciente_id paciente_idade \\\n",
"68 255c3b3825af5494129c9bafb98172f3fa5e4eb788dc99... 64 \n",
"87 aed7c8cc98716f027f0b318a2196a448a349f27b9a2017... 47 \n",
"106 16da6e89d2dc23d31edfbb488c33fdcf05fe7f8d44734f... 51 \n",
"177 7c689b5b743093956561e63c49e52ff803bb699b676e35... 68 \n",
"222 ab8b25387ade33ca12754a2090df6a2ec4d89e63e99970... 59 \n",
"... ... ... \n",
"352782 04b79b88113b4b90f8044cbb8b7a7e722d9e95d71c31f7... 66 \n",
"352800 f57de71ef7e4ba1c5b517e234295aeb78d6e4d7d24c693... 64 \n",
"352868 3039b36281f201f924698453c72c98a98733119acffc15... 60 \n",
"352909 af8d5ea0f8163acbf2902ccbb9ed108623d01b94d160af... 59 \n",
"352937 7a4d522c30a5d660d33eb0ad8b84c06fd8d22a6844dd4a... 71 \n",
"\n",
" paciente_datanascimento paciente_enumsexobiologico \\\n",
"68 1956-04-28 F \n",
"87 1973-12-10 F \n",
"106 1969-09-27 F \n",
"177 1952-06-19 F \n",
"222 1961-11-25 F \n",
"... ... ... \n",
"352782 1955-01-30 M \n",
"352800 1957-03-04 M \n",
"352868 1960-09-01 F \n",
"352909 1962-04-06 F \n",
"352937 1950-04-19 F \n",
"\n",
" paciente_racacor_codigo paciente_racacor_valor \\\n",
"68 3 PARDA \n",
"87 3 PARDA \n",
"106 4 AMARELA \n",
"177 3 PARDA \n",
"222 3 PARDA \n",
"... ... ... \n",
"352782 3 PARDA \n",
"352800 99 SEM INFORMACAO \n",
"352868 4 AMARELA \n",
"352909 3 PARDA \n",
"352937 4 AMARELA \n",
"\n",
" paciente_endereco_coibgemunicipio paciente_endereco_copais \\\n",
"68 120070.0 10.0 \n",
"87 120070.0 10.0 \n",
"106 120070.0 10.0 \n",
"177 120070.0 10.0 \n",
"222 120070.0 10.0 \n",
"... ... ... \n",
"352782 120070.0 10.0 \n",
"352800 120070.0 10.0 \n",
"352868 120070.0 10.0 \n",
"352909 120040.0 10.0 \n",
"352937 120070.0 10.0 \n",
"\n",
" paciente_endereco_nmmunicipio ... vacina_lote vacina_fabricante_nome \\\n",
"68 XAPURI ... 210077 FUNDACAO BUTANTAN \n",
"87 XAPURI ... 210015 FUNDACAO BUTANTAN \n",
"106 XAPURI ... 210012 FUNDACAO BUTANTAN \n",
"177 XAPURI ... 210110 FUNDACAO BUTANTAN \n",
"222 XAPURI ... 213VCD027Z FUNDACAO OSWALDO CRUZ \n",
"... ... ... ... ... \n",
"352782 XAPURI ... 210044 FUNDACAO BUTANTAN \n",
"352800 XAPURI ... 210015 FUNDACAO BUTANTAN \n",
"352868 XAPURI ... 202010040 FUNDACAO BUTANTAN \n",
"352909 RIO BRANCO ... 210110 FUNDACAO BUTANTAN \n",
"352937 XAPURI ... 210012 FUNDACAO BUTANTAN \n",
"\n",
" vacina_fabricante_referencia vacina_dataaplicacao \\\n",
"68 Organization/61189445000156 2021-04-05 \n",
"87 Organization/61189445000156 2021-05-08 \n",
"106 Organization/61189445000156 2021-05-21 \n",
"177 Organization/61189445000156 2021-04-27 \n",
"222 Organization/33781055000135 2021-05-06 \n",
"... ... ... \n",
"352782 Organization/61189445000156 2021-04-05 \n",
"352800 Organization/61189445000156 2021-05-05 \n",
"352868 Organization/61189445000156 2021-05-12 \n",
"352909 Organization/61189445000156 2021-05-08 \n",
"352937 Organization/61189445000156 2021-05-17 \n",
"\n",
" vacina_descricao_dose vacina_codigo \\\n",
"68     1ª Dose 86 \n",
"87     2ª Dose 86 \n",
"106     1ª Dose 86 \n",
"177     2ª Dose 86 \n",
"222     1ª Dose 85 \n",
"... ... ... \n",
"352782     2ª Dose 86 \n",
"352800     2ª Dose 86 \n",
"352868     2ª Dose 86 \n",
"352909     2ª Dose 86 \n",
"352937     2ª Dose 86 \n",
"\n",
" vacina_nome sistema_origem \\\n",
"68 Covid-19-Coronavac-Sinovac/Butantan Novo PNI \n",
"87 Covid-19-Coronavac-Sinovac/Butantan Novo PNI \n",
"106 Covid-19-Coronavac-Sinovac/Butantan Novo PNI \n",
"177 Covid-19-Coronavac-Sinovac/Butantan Novo PNI \n",
"222 Vacina Covid-19 - Covishield Novo PNI \n",
"... ... ... \n",
"352782 Covid-19-Coronavac-Sinovac/Butantan Novo PNI \n",
"352800 Covid-19-Coronavac-Sinovac/Butantan Novo PNI \n",
"352868 Covid-19-Coronavac-Sinovac/Butantan Novo PNI \n",
"352909 Covid-19-Coronavac-Sinovac/Butantan Novo PNI \n",
"352937 Covid-19-Coronavac-Sinovac/Butantan Novo PNI \n",
"\n",
" data_importacao_rnds id_sistema_origem \n",
"68 2021-04-10T01:52:51.000Z 16341 \n",
"87 2021-05-11T19:52:44.000Z 16341 \n",
"106 2021-05-24T14:37:15.000Z 16341 \n",
"177 2021-04-27T20:31:05.000Z 16341 \n",
"222 2021-05-07T15:02:58.000Z 16341 \n",
"... ... ... \n",
"352782 2021-04-14T21:06:24.000Z 16341 \n",
"352800 2021-05-07T19:30:20.000Z 16341 \n",
"352868 2021-05-12T20:49:32.000Z 16341 \n",
"352909 2021-05-12T13:48:53.000Z 16341 \n",
"352937 2021-05-18T15:58:53.000Z 16341 \n",
"\n",
"[6815 rows x 34 columns]"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Suspeito que o nome do ESTABELECIMENTO está na coluna \"ESTALECIMENTO\"\n",
"\n",
"ac.query('estalecimento_nofantasia == \"UNIDADE SAUDE DA FAMILIA JOSE FADUL\"')"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [],
"source": [
"# 6.815 pessoas se vacinaram neste posto. 50 teriam tomado doses vencidas.\n",
"# Vamos explorar melhor este recorte.\n",
"\n",
"xap = ac.query('estalecimento_nofantasia == \"UNIDADE SAUDE DA FAMILIA JOSE FADUL\"').copy()"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"vacina_lote\n",
"200278 22\n",
"202010040 273\n",
"210012 126\n",
"210015 106\n",
"210038 58\n",
"210040 107\n",
"210044 54\n",
"210052A 129\n",
"210077 1429\n",
"210089 114\n",
"210110 1221\n",
"210139 26\n",
"210150 25\n",
"210209 9\n",
"210212 85\n",
"210213 85\n",
"210223 36\n",
"212VCD003ZVAA 303\n",
"213VCD001W 22\n",
"213VCD003W 59\n",
"213VCD008VA 10\n",
"213VCD010W 142\n",
"213VCD027Z 240\n",
"213VCD042Z 330\n",
"214VCD056W 267\n",
"215VCD116W 668\n",
"215VCD120W 36\n",
"4120Z004 40\n",
"4120Z025 350\n",
"ABW4731 346\n",
"CTMAV501 67\n",
" 4120Z004 30\n",
"Name: sistema_origem, dtype: int64"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Pela reportagem da Folha, vacinas do lote \"CTMAV501\" venciam dia 30 de abril. \n",
"# Quantas foram aplicadas aqui?\n",
"\n",
"xap.groupby('vacina_lote')['sistema_origem'].count()"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"scrolled": false
},
"outputs": [
{
"data": {
"text/plain": [
"vacina_dataaplicacao\n",
"2021-02-16 1\n",
"2021-06-02 14\n",
"2021-06-04 5\n",
"2021-06-07 1\n",
"2021-06-11 19\n",
"2021-06-12 11\n",
"2021-06-15 1\n",
"2021-06-16 15\n",
"Name: vacina_nome, dtype: int64"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Agrupamos as doses do lote maldito por data de aplicação. \n",
"\n",
"xap.query('vacina_lote == \"CTMAV501\"').groupby('vacina_dataaplicacao')['vacina_nome'].count()"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"data_importacao_rnds\n",
"2021-06-13 00:00:00+00:00 20\n",
"2021-06-20 00:00:00+00:00 30\n",
"2021-06-27 00:00:00+00:00 17\n",
"Freq: W-SUN, Name: paciente_idade, dtype: int64"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Poderia ser um problema de lançamento dos dados no sistema?\n",
"\n",
"# Primeiro falamos pro pandas que aquela coluna é do tipo \"datetime\"\n",
"xap['data_importacao_rnds'] = pd.to_datetime(xap['data_importacao_rnds'])\n",
"\n",
"# Agrupamos os lançamentos semana\n",
"xap.query('vacina_lote == \"CTMAV501\"').groupby(pd.Grouper(freq='W', key='data_importacao_rnds'))['paciente_idade'].count()"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [],
"source": [
"# Vamos comparar com outros municípios do estado. Como foi a aplicação?\n",
"vac = ac.query('vacina_lote == \"CTMAV501\"').groupby('vacina_dataaplicacao')['vacina_codigo'].count()"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[]"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# Podemos visualizar para ver que a aplicação desse lote se deu primordialmente em abril.\n",
"import matplotlib.pyplot as plt\n",
"\n",
"plt.setp(vac.plot().get_xticklabels(), rotation=45)\n",
"plt.plot()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"No site da SAGE, há notas de envio e entrega. Aqui é possível ver, [por estado](https://sage.saude.gov.br/sistemas/vacina/vacina_fases.php). \n",
"\n",
"Clicando [aqui](https://sage.saude.gov.br/sistemas/vacina/pdf/ac_fase10.pdf?n=446185901) vemos o recibo de entrega do lote, no fim de março. Logo, seria impossível aplicar essa dose em fevereiro, como está registrado."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Conclusão: \n",
"\n",
"Não é possível cravar com certeza que vacinas fora da validade foram administradas. Os dados **sugerem** que doses daquele lote foram mesmo aplicadas fora da validade. Inclusive possivelmente em número maior do que está na reportagem da Folha (67 contra 51). Mas há suspeitas tanto pela quantidade \"picada\" de doses (considerando que os frascos tem 10 doses) quanto pela concentração dos lançamentos no sistema em maio. O município [afirma que pode ter errado](https://www.facebook.com/permalink.php?story_fbid=1378813159167992&id=413201745729143). "
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.5"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment