Principal

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.

source

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
import os
import warnings
from extracao.updates import connect_db
import numpy as np
from geopy.distance import geodesic
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()