1
resposta

Erro Mad no parâmetro aggfunc

Fala pessoal, apenas para ajudar ai a galera que ficou perdido com o Mad() que foi descontinuado, abordei da seguinte maneira:

# Tendo em vista a descontinuação do MAD no pandas vamos utilizar o lambda

# Tabela cruzada com as funções de agregação corretas
renda_dispersao_por_sexo_e_cor = pd.crosstab(
    dados.Cor,
    dados.Sexo,
    values=dados.Renda,
    aggfunc=[
        lambda x: (x - x.mean()).abs().mean(),  # Cálculo de MAD
        'var',  # Variância
        'std'   # Desvio Padrão
    ]
).round(2)

renda_dispersao_por_sexo_e_cor.rename(index = cor, inplace = True)
renda_dispersao_por_sexo_e_cor.rename(columns = sexo, inplace = True) 

renda_dispersao_por_sexo_e_cor.columns = [
    ('MAD', Sexo) if func == '<lambda>' else (func, Sexo)
    for func, Sexo in renda_dispersao_por_sexo_e_cor.columns
]


renda_dispersao_por_sexo_e_cor
1 resposta

Oi Danilo! Tudo bem?

Que bacana que você compartilhou sua abordagem para contornar a descontinuação do método mad() no Pandas. Sua solução com o uso de uma função lambda para calcular o Desvio Médio Absoluto (MAD) é uma ótima alternativa. Isso mostra como é possível adaptar o código para continuar obtendo as métricas desejadas, mesmo quando algumas funções são descontinuadas ou alteradas nas bibliotecas.

Obrigada por compartilhar com a gente, é sempre bom ver soluções criativas e práticas como essa! Parabéns pela iniciativa em auxiliar outros estudantes!

Conte sempre com o apoio do fórum :)

Um abraço e bons estudos!