# ---
# jupyter:
#   jupytext:
#     text_representation:
#       extension: .py
#       format_name: light
#       format_version: '1.5'
#       jupytext_version: 1.14.4
#   kernelspec:
#     display_name: Python 3
#     language: python
#     name: python3
# ---

# # <NAME> e o mapa da cólera

# ![fig](https://www.thevintagenews.com/wp-content/uploads/2016/09/John-Snow.jpg)

# <NAME> (York, 15 de março de 1813 – Londres, 16 de junho de 1858) foi um médico inglês, considerado pai da epidemiologia moderna. 
#
# Demonstrou que o cólera era causado pelo consumo de águas contaminadas com matérias fecais, ao comprovar que os casos dessa doença se agrupavam nas zonas onde a água consumida estava contaminada com fezes, na cidade de Londres no ano de 1854. 
#
# Nesse ano cartografou num plano do distrito do Soho os poços de água, localizando como culpado o poço existente em Broad Street, em pleno coração da epidemia. Snow recomendou à comunidade fecha-lo, com o que foram diminuindo os casos da doença. Este episódio é considerado como um dos exemplos mais precoces no uso do método geográfico para a descrição de casos de uma epidemia. 
#
# https://pt.wikipedia.org/wiki/John_Snow
#

# # Desafio: reproduzir o Mapa que <NAME> fez em 1854

# +
# Carregue o Pandas!

# Reading in the data
deaths = #seu codigo aqui
pumps = #seu codigo aqui
dates =  #seu codigo aqui


# +
# Vamos começar dando uma olhada no DF "deaths"

#Qual o cabeçalho dele?
#Quantas linhas e colunas temos?

# +
# Renomear as colunas do dataframe death de acordo com o dicionário abaixo:

newcols = {
    'Death': 'death_count',
    'X coordinate': 'x_latitude', 
    'Y coordinate': 'y_longitude' 
    }

#seu codigo aqui

deaths.describe()

# +
# Crie `locations` selecionando apenas latitude e longitude do seu DataFrame
locations = #seu codigo aqui

# Crie `deaths_list` transformando o DataFrame criado acimanuma lista de listas 
#(Dica: use .values.tolist() direto no dataframe)

deaths_list = #seu codigo aqui

len(deaths_list)
# -

# ### Instalando a biblioteca de mapas, folium:
#
#     conda install -c conda-forge folium
#     
# Documentação: https://python-visualization.github.io/folium/

# +
# Desenhe o mapa:
import folium

# A posição inicial está criada para você:
map = folium.Map(location=[51.5132119,-0.13666], tiles='Stamen Toner', zoom_start=17)

# Crie um laço que itere para cada item na lista criada anterirmente

for point in  #seu codigo aqui
    folium.CircleMarker(deaths_list[point], radius=8, color='red', fill=True, fill_color='red', opacity = 0.4).add_to(map)
map

# +
# Vamos fazer o mesmo para o df de "pumps"


# Selecionar apenas as coluans ['X coordinate', 'Y coordinate'] 
locations_pumps =  #seu codigo aqui

# Transform numa lista de listas
pumps_list =  #seu codigo aqui

# Criar o laço que coloca os pontos no mapa
map1 = map
#seu codigo aqui
    folium.Marker(#seu codigo aqui, 
        popup=pumps['Pump Name'][point]).add_to(map1)
map1

# +
# Por fim, vamos explorar o DF "dates"

# Set a data em que a bomba foi removida: (8th of September 1854)
handle_removed = #seu codigo aqui

# Crie a coluna `day_name` em `dates` com o nome do dia de cada linha
dates['day_name'] = #seu codigo aqui

# Crie a coluna `handle` em `dates` baseada na data se foi ou não ainda removida a bomba
dates['handle'] = #seu codigo aqui

# Agrupe somando os valores de acordo com se a bomba foi ou não removida
dates.#seu codigo aqui

# +
# Crie um gráfico mostrando a diferença de mortes por cólera e os ataques de cólera ao longo dos anos
# -

# # E então, <NAME> não sabia de nada?

StarcoderdataJupyterScriptsDedupFiltered