Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

SAS - Média

Olá, gostaria de saber se é possivel a seguinte situação:

Base:

Coluna 1: 1, 1, 2, 2 Coluna 2: 10, 20, 30,20

Eu queria criar uma nova coluna que registrasse a média com a condição de que os dados da coluna 1 fossem iguais. Assim: Coluna 3: 15, 15, 25, 25

Ou seja, quando a coluna 1=1 registra: média de 10 e 20, quando a coluna 1=2 registra: média de 30 e 20.

Eu sei que existe a função média mas até onde sei não iria registrar o valor desta forma. Iria compactar as linhas e apresentar um só valor.

3 respostas

Olá,

Acho que não entendi muito bem o problema. Você teria uma base assim:

Coluna_1 -Coluna_2
110
120
230
220

E deseja como resultado uma base assim:

Coluna_1 -Coluna_2 -Coluna_3
11015
12015
23025
22025

É isso?

É isso mesmo que eu precisava

solução!

Creio que a forma mais simples seja fazer o agrupamento da primeira base através da coluna_1, conseguindo assim a base "compactada" que vc mencionou, depois cruzar a primeira base com essa base compactada por um left join usando a coluna_1 como chave de cruzamento, trazendo a média como coluna_3.

Não é muito elegante, mas funciona.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software