import os
import warnings
from extracao.updates import connect_db
import numpy as np
from geopy.distance import geodesicPrincipal
Este módulo concentra funções auxiliares específicas que filtram os dados do banco com campos e formatação de interesse para aplicações específicas como o appAnalise por exemplo.
get_db
get_db (path:Union[str,pathlib.Path], connSQL:pyodbc.Connection=None, clientMongoDB:pymongo.mongo_client.MongoClient=None)
Lê e opcionalmente atualiza as bases da Anatel, mescla as bases da Aeronáutica, salva e retorna o arquivo A atualização junto às bases de dados da Anatel é efetuada caso ambos objetos de banco connSQL e clientMongoDB forem válidos`
| Type | Default | Details | |
|---|---|---|---|
| path | Union | Pasta onde salvar os arquivos”, | |
| connSQL | Connection | None | Objeto de conexão do banco SQL Server |
| clientMongoDB | MongoClient | None | Objeto de conexão do banco MongoDB |
| Returns | DataFrame | Retorna o DataFrame com as bases da Anatel e da Aeronáutica |
warnings.filterwarnings("ignore")folder = Path.cwd().parent / 'dados'# conn = connect_db()
# uri = os.environ['MONGO_URI']
# mongo_client = MongoClient(uri)# os.chdir(f"{Path.cwd().parent}/extracao/aero")
df = get_db(folder)
# df = get_db(folder) #, conn, mongo_client)
# df = pd.read_parquet(folder / 'AnatelDB.parquet.gzip')📜Lendo as bases de dados da Anatel...
✈Requisitando os dados da Aeronáutica.
🥄Mesclando os dados da Aeronáutica.
🗃Salvando os arquivos...
Sucesso ⚡
from pandas_profiling import ProfileReport
df['Frequency'] = df['Frequency'].astype('category')
profile = ProfileReport(df, config_file= folder.parent / 'nbs/report_config.yaml')
profile.to_notebook_iframe()