Média Geométrica no SAS

A média é uma medida de tendência central muito utilizada, mas com vários problemas. Se temos outliers, geralmente preferimos utilizar a mediana. Outras vezes vamos preferir médias ponderadas. Em outros casos, quando temos medidas que crescem de forma exponencial, ou casos de distribuições assimétricas, vamos falar da média geométrica.

SOBRE A MÉDIA GEOMÉTRICA

Primeiro, vamos revisar o que é a média geométrica de forma breve. A média geométrica é simplesmente o produto dos n elementos de um conjunto elevado à n-ésima raiz. Estamos falando desta fórmula:

Ela é necessária para lidar principalmente quando estamos lidando com taxas de crescimento. Um exemplo legal citado no Investopedia é para retornos de portfólios. Considere uma carteira cujas ações foram de 100 para 110 no ano um, depois para 80 no ano dois e 150 no ano três. O retorno da carteira é então calculado como ($ 150 / $ 100) ^ (1/3) = 0,1447 ou 14,47%.

Outras aplicações, você pode consultar o Wikipedia e o Investopedia. Para saber mais de medidas de tendência central como um todo, sugiro essa página: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3127352/.

CÓDIGO SAS UTILIZANDO DATA STEP

Para calcular a média geométrica no data step, existe uma função própria do SAS chamada geomean():

data exemplo_A;    
    media_geometrica_1 = geomean(100,200); 
    media_geometrica_2 = geomean(300,400);
run;
CÓDIGO EM SAS UTILIZANDO PROC SQL

Agora, se você quiser fazer isso no proc sql, então teria que ser “na mão” mesmo. Em outras palavras, não tem uma função já disponível. A boa notícia é que essa forma pode ser utilizada no SQL, Python e R – os dois últimos precisando de algum pacote que permita usar SQL.

Sendo assim, vamos dar sequência criando uma tabela como exemplo e, assim,  facilitar o entendimento do uso:

data exemplo_2;
    input id $ valor;
    cards;
AAA 100
AAA 200
BBB 300
BBB 400
;
run;

proc sql;proc sql;    
    create table exemplo_B_v2 as     
    select id, exp(mean(log(valor))) as media_geometrica 
    from exemplo_B 
group by 1;
run;

E aí? Gostou do conteúdo? Se inscreva para receber todas as novidades. Deixe seu e-mail em INSCREVA-SE na barra à direita, logo abaixo de pesquisar. E, por favor, não deixe de comentar, dar seu feedback e, principalmente, compartilhar com seus amigos. De verdade, isso faz toda a diferença. Além disso, você também pode acompanhar mais do meu trabalho seguindo a conta de Twitter @UniDosDados ou por alguma das redes que você encontra em Sobre o Estatsite / Contato, como meu canal de Youtube Canal Universidade dos Dados. E se você gosta de tecnologia, escute o podcast Futuristando!

Bons estudos!

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *