Neste repositório encontram-se as resoluções para o desafio proposto pela empresa Driva.
Foram disponibilzadas pela empresa, através de seu CTO - Wagner Agostinho, duas opções de desafios, logo, neste repositório, encontram-se as soluções para a 1º opção.
Na opção 01, foi pedido para elaborar um pequeno código em Python utilizando a biblioteca Pandas e que atendesse aos seguintes requisitos.
Checklist
- Leia o arquivo "DadosEmpresa.csv";
- Print no terminal as colunas desse arquivo;
- Print no terminal as primeiras linhas desse arquivo;
- Print no terminal o total de empresas nesse arquivo que tem a coluna "opcao_pelo_simples" com o valor "SIM";
- Print no terminal a soma do "capital_social" de todas as empresas;
- Print no terminal todas as empresas que tem "capital_social" maior que 10.000 e menor que 20.000;
- EXTRA: Leia o arquivo "DadosEndereco.csv";
- EXTRA: Faça um merge entre os dois arquivos pela coluna "cnpj" e salve um arquivo CSV com todas as empresas que são de "CURITIBA";
- Faça um merge entre os dois arquivos pela coluna "cnpj";
- salve um arquivo CSV com todas as empresas que são de "CURITIBA";
Posteriormente a organização das tarefas, depois de 2 xícaras de café, prontamente, criei um ambiente virtual no diretório do meu projeto e fui para a execução das tarefas.
Criei um repositório no github, instalei dependências e bibliotecas que otimizariam e organizariam o desenvolvimento da minha análise de dados.
Os dados a serem analisados inicialmente estavam em uma planilha, na qual, no fim das atividades, foi pedido que fosse mergeada com uma outra planilha e após o feito, pediu-se para salvar um arquivo .csv com novas informações.
Particularmente, tenho grande admiração pela biblioteca Pandas, pois trata-se de uma ferramenta poderosa no quesito análise de dados, o que me ajudou bastante na execução do que foi pedido.
Algumas dúvidas surgiram no meio do caminho, e a documentação estava ali para salvar-me, definitivamente sua documentação é esplêndida!
No desafio Print no terminal o total de empresas nesse arquivo que tem a coluna "opcao_pelo_simples" com o valor "SIM"; fiquei um pouco inseguro. Não sabia exatamente se a função .value_counts já poderia me conteplar com o resultado, pois ela retorna um objeto contendo contagens de valores únicos, logo, seria retornado a quantidade de SIM e NÃO na mesma consulta, então decidi executar de uma outra forma, trazendo apenas a coluna pedida com a quantidade de valores SIM.
Já no desafio Print no terminal a soma do "capital_social" de todas as empresas por se tratar de valores de retorno alto e monetário, a saída fica um pouco ilegível. Resolvi então aplicar uma formatação para melhorar um pouco mais, porém acabou que não fiquei muito seguro quanto ao resultado. Algo que conseguiria sanar aprofundando-me um pouco mais nas informações obtidas dataframe ou fazendo uma pergunta ao Wagner :).
Enfim, os demais desafios, consegui chegar as soluções de forma sem arrancar os cabelos satisfatória.
- Pandas - Biblioteca de análise e manipulação de dados.
- Flake8 - Ferramenta que verifica o estilo do código com base na gloriosa PEP8.
- MyPy - Verificador de tipo estático.
- Autopep8 - Ferramenta que formata automaticamente o código Python de acordo com o PEP8.
- Usei o GitHub para o controle de versão.
- Desenvolvedor Web - Desenvolvimento - Erick Marinho
- Queria deixar aqui meu agradecimento especial ao Wagner Agostinho CTO | Driva - pela oportunidade oferecida em realizar este desafio, que com certeza, ajudou-me a desafiar-me e principalmente em aprender um pouco mais.🤓
⌨️ com ❤️ Erick Marinho