Introdução
Neste projeto, você aprenderá como analisar dados da COVID-19 usando Python. A pandemia de COVID-19 teve um impacto significativo no mundo, e entender os dados é crucial para rastrear a disseminação do vírus e tomar decisões informadas.
👀 Visualização
{
"Confirmed": {
"Africa": 1203094,
"America": 6396173,
"Asia": 6480321,
"Europe": 3450299,
"Oceania": 27346,
"Others": 721,
"Total": 17557954
},
"Deaths": {
"Africa": 28289,
"America": 254610,
"Asia": 133186,
"Europe": 206438,
"Oceania": 576,
"Others": 15,
"Total": 623114
},
"Recovered": {
"Africa": 930536,
"America": 5087347,
"Asia": 5163062,
"Europe": 1927545,
"Oceania": 21892,
"Others": 651,
"Total": 13131033
},
"Active": {
"Africa": 244269,
"America": 1054216,
"Asia": 1184073,
"Europe": 1316316,
"Oceania": 4878,
"Others": 55,
"Total": 3803807
}
}
🎯 Tarefas
Neste projeto, você aprenderá:
- Como configurar o ambiente de desenvolvimento e instalar as bibliotecas Python necessárias
- Como entender a estrutura e o conteúdo dos dados da COVID-19
- Como implementar uma função para converter nomes de países em nomes de continentes
- Como processar os dados da COVID-19 e calcular as estatísticas resumidas para cada continente
- Como testar o código e verificar a saída
🏆 Conquistas
Após concluir este projeto, você será capaz de:
- Entender como trabalhar com dados CSV em Python
- Implementar funções para processar e analisar dados
- Converter dados entre diferentes formatos (por exemplo, CSV para JSON)
- Ganhar experiência em análise e visualização de dados
- Contribuir para a compreensão da pandemia de COVID-19 por meio de insights baseados em dados
Preparar o Ambiente
Nesta etapa, você aprenderá como configurar o ambiente para o projeto de análise de dados da COVID-19.
- Abra o terminal e navegue até o diretório
/home/labex/project. - Instale as bibliotecas Python necessárias executando o seguinte comando:
python3 -m pip install pandas country-converter
Isso instalará as bibliotecas pandas e country-converter, que são necessárias para o projeto.
Entender os Dados
Os dados da COVID-19 são fornecidos em um arquivo CSV localizado no diretório /home/labex/project. O arquivo contém as seguintes colunas:
Country_Region: O nome do país ou região.Confirmed: O número total de casos confirmados de COVID-19.Deaths: O número total de mortes por COVID-19.Recovered: O número total de recuperações de COVID-19.Active: O número total de casos ativos de COVID-19.
Sua tarefa é processar esses dados e calcular as estatísticas resumidas para cada continente.
Implementar a Função country_to_continent
O primeiro passo é criar uma função que possa converter o nome de um país para o nome do seu continente correspondente. Crie um novo arquivo chamado covid.py no diretório /home/labex/project e adicione o seguinte código:
import country_converter as coco
def country_to_continent(country_name):
"""This function takes a country name and returns the continent name."""
try:
## Convert country name to continent name
if country_name == "Diamond Princess" or country_name == "MS Zaandam":
return "Others"
country_continent_name = coco.convert(names=country_name, to="continent")
## If country name is not found, return 'Others'
if country_continent_name == "not found":
return "Others"
return country_continent_name
except:
return "Others"
Esta função usa a biblioteca country-converter para converter o nome de um país para o nome do seu continente correspondente. Se o nome do país não for encontrado, ela retorna "Others".
Implementar a Função count
Em seguida, você precisa implementar a função count, que processará os dados da COVID-19 e retornará as estatísticas resumidas para cada continente. Adicione o seguinte código ao arquivo covid.py:
import json
import pandas as pd
def count(data):
"""This function takes a file path and returns the total number of
confirmed, deaths, recovered and active cases for each continent."""
## Read the data from the file
df = pd.read_csv(data)
## Fill missing values with 0
df.fillna(0, inplace=True)
## Remove rows with missing values
df = df[df["Confirmed"] == df["Deaths"] + df["Recovered"] + df["Active"]]
## Convert country name to continent name
df["Continent"] = df["Country_Region"].apply(country_to_continent)
## Convert data type to int
df[["Confirmed", "Deaths", "Recovered", "Active"]] = df[
["Confirmed", "Deaths", "Recovered", "Active"]
].astype(int)
## Select columns of interest and change them into dictionary
df = df[["Continent", "Confirmed", "Deaths", "Recovered", "Active"]]
result = df.groupby("Continent").sum().to_dict()
## Add total for each continent
for key in result.keys():
result[key]["Total"] = sum(result[key].values())
return json.dumps(result)
Esta função lê os dados da COVID-19 do arquivo CSV, processa os dados e retorna as estatísticas resumidas para cada continente em formato JSON.
Testar o Código
Para testar o código, você pode executar o seguinte comando no terminal:
python3 covid.py
Isso executará a função count e imprimirá os dados JSON resultantes no console.
Verificar a Saída
A saída da função count deve ser uma string JSON que se assemelha ao seguinte:
{
"Confirmed": {
"Africa": 1203094,
"America": 6396173,
"Asia": 6480321,
"Europe": 3450299,
"Oceania": 27346,
"Others": 721,
"Total": 17557954
},
"Deaths": {
"Africa": 28289,
"America": 254610,
"Asia": 133186,
"Europe": 206438,
"Oceania": 576,
"Others": 15,
"Total": 623114
},
"Recovered": {
"Africa": 930536,
"America": 5087347,
"Asia": 5163062,
"Europe": 1927545,
"Oceania": 21892,
"Others": 651,
"Total": 13131033
},
"Active": {
"Africa": 244269,
"America": 1054216,
"Asia": 1184073,
"Europe": 1316316,
"Oceania": 4878,
"Others": 55,
"Total": 3803807
}
}
Esta saída representa as estatísticas resumidas para cada continente, incluindo o número total de casos confirmados, óbitos, recuperações e casos ativos.
Parabéns! Você concluiu o projeto de análise de dados da COVID-19. Se tiver alguma dúvida ou problema, sinta-se à vontade para perguntar.
Resumo
Parabéns! Você concluiu este projeto. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.



