<jupyter_start><jupyter_text>%%htmldiv.input {    display:none;} ------------------  Relatório Business<jupyter_code>import pandas as pd
import numpy as np
from plot_helper import diag_corr, bars, lines, joint
import warnings
warnings.simplefilter(action='ignore', category=FutureWarning)

df_full = pd.read_pickle('../data/interim/ambev-final-dataset.pkl')
df_full = df_full[df_full.status_meta != 'nan'] # removendo o que nao é meta
df_full['target'] = df_full.groupby(
    ['id_funcionario', 'mes']).ating_mes.transform('mean') / 100<jupyter_output><empty_output><jupyter_text>Será que os gestores influênciam as metas dos seus diretos?Observando a distribuição dos cumprimentos de meta dos gestores e seus funcionários diretos foi observado uma total falta de correlação. Isso pode significar que os gestores realmente não influenciam seus funcionários no cumprimento da meta, mas tal afirmação deveria demandar mais evidência para ser levada a sério, talvez quando olhando a companhia como um todo essa comportamento não se fique explicito, mas quando observarmos metas especificas para áreas especificas fique mais claro.<jupyter_code>meta_funcionarios_gestor = df_full.groupby(['id_gestor']).target.agg('mean').reset_index()
meta_gestor = df_full.loc[df_full.id_funcionario.isin(meta_funcionarios_gestor.id_gestor.unique())].groupby('id_funcionario').target.agg('mean').reset_index()
meta_gestor.columns = ['id','meta_gestor']
meta_funcionarios_gestor.columns = ['id', 'meta_funcionarios']
metas_hiera = pd.merge(meta_gestor, meta_funcionarios_gestor, how='inner', on=['id'])
joint(metas_hiera.meta_gestor, metas_hiera.meta_funcionarios, 'JointPlot Metas Gestores vs Funcionarios do Gestor')<jupyter_output><empty_output><jupyter_text>Acelera que o fim de ano vêm aí.Observando os cumprimentos das metas por diferentes visões da empresa vemos que uma coisa é certa, chegando o fim do ano as metas são cumpridas em uma proporção muito maior. Destaque para a `Área Regional 3` por sua guinada impressionante.<jupyter_code>local = 'area_regional'
# Pega os mais singificantes locais (com mais funcionários)
def visualiza_local(df, local, plot=True):
    ''' Cria visualizações temporais sobre o cumprimento da meta em categorias especificadas
    '''
    top_locais = df.groupby([local])['id_funcionario'].agg('nunique').sort_values(ascending=False)[:7].index
    por_local = df.groupby(['mes', local]).target.agg('mean').unstack()
    por_local = por_local.fillna(method='ffill').fillna(method='bfill')
    por_local = por_local.stack().reset_index(name='meta')
    por_local.loc[~por_local[local].isin(top_locais), local] = 'outros'

    if plot:
        lines(por_local.mes.astype(int), por_local.meta, por_local[local], 'Evolução Meta por ' + local)
    return por_local

_ = visualiza_local(df_full, 'area_regional')
_ = visualiza_local(df_full, 'mundo')
_ = visualiza_local(df_full, 'diretoria')<jupyter_output><empty_output><jupyter_text>Nossas regiões se canibalizam?Quando se pensa no tamanho da Ambev e seu Market-Share, é difícil achar que não haja canibalismo das vendas dos produtos. Observando os gráficos abaixo vemos que o canibalismo muito provavelmente existe e influência fortemente as metas dos funcionários das áreas que se afetam. Principalmente a `Área Regional 0` que tem uma correlação de metas negativa muito forte em relação as outras.<jupyter_code>por_reg = df_full.groupby(['mes', 'area_regional']).target.agg('mean').unstack()
# Ajustando os nomes das colunas para conseguir ordernar
por_reg.columns = [format(int(x), '02d') for x in por_reg.columns.values]
# Criando matrix de correlação
por_reg = por_reg.reindex(sorted(por_reg.columns), axis=1)
corr = por_reg.corr()
diag_corr(corr, 'Correlação das Metas entre Regiões')
smax = corr.columns.to_series() + ' -> ' + corr[corr<1].idxmax()
smin = corr.columns.to_series() + ' -> ' + corr.idxmin()
vmax = corr[corr<1].max()
vmin = corr.min()
bars(smax, vmax, 'Max Correl', 'Duplas de Regiões com Maior Correlação do Cumprimento da Meta por Região')
bars(smin, vmin, 'Min Correl', 'Duplas de Regiões com Menor Correlação do Cumprimento da Meta')<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.11092396535129932, 'fraction_numerical': 0.0026467757459095282, 'mean_word_length': 6.192041522491349, 'pattern_counts': {'":': 0, '<': 19, '<?xml version=': 0, '>': 19, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '4', 'dir': 'jupyter-structured-clean-dedup', 'id': '589495', 'license': 'MIT', 'n_tokens_mistral': 1470, 'n_tokens_neox': 1434, 'n_words': 375, 'path': 'notebooks/04-business.ipynb', 'repo_name': 'amuta/ambev-data-challenge', 'size': '4156'}