Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Boa noite, colegas,
Sou novo no Qlik e sense e tenho dúvidas em relação ao cálculo de uma média, é o seguinte, eu tenho tabela carregada com numero populacional (anual) e um gasto(anual). Gostaria de tirar uma média para saber qual meu gasto per capita anual, alguém poderia me ajudar?
Boa noite Gabriel.
Acredito que uma forma tranquila de se fazer isso é vc criar um campo gastoPerCapita em seu script de carga, onde seria basicamente numeroPopulacional / gasto.
Após isso, basta vc criar uma measure mediaGasto = AVG(gastoPerCapita)
Bom, espero ter ajudado 😉
Tranquilo Gabriel, vamos lá 😉
Você provavelmente está lendo estes dados de alguma fonte (.csv, .xls, banco de dados ou tabela web) certo?
Então, esta leitura dos dados gera um script em seu arquivo .QVW, onde ele deve apresentar algo do tipo:
<nome_da_sua_tabela>:
LOAD
numeroPopulacional,
gasto
FROM <path>;
Então, quando me refiro em carga é justamente na declaração deste script (obs: estou contando com possibilidade de vc ter acesso ao modo de edição de script no arquivo QVW gerador das suas analises, certo?).
Sendo assim, basta você adicionar mais um campo nesta tabela, o que ficaria mais ou menos assim (digo isto, pois não sei o nome correto dos seus campos):
<nome_da_sua_tabela>: LOAD numeroPopulacional, gasto, gasto / numeroPopulacional as gastoPerCapita FROM <path>;
Obs: Após recarregar o seu arquivo .qvw (podes utilizar o botão recarregar, ou apenas CTRL + R), você poderá criar a sua measure (medida), ou seja, a expressão/fórmula em sua camada visual, ou mais conhecida como analises gráficas (pizza, barras, tabela, etc).
AVG(gastoPerCapita)
Se ficou ainda mais alguma dúvida não hesite em perguntar 😉
Vamos lá então... vc poderia dar mais detalhes do que não deu certo?
Tipo, o campo gastoPerCapita criado não trouxe nenhum dado na tabela? Podes ver isso usando o comando CTRL + T no seu arquivo .QVW para poder abrir o modo de visualização das tabelas, e na tabela em questão clicar com o botão direto do mouse para ver os results desta tabela. Verifique o que está retornando para este campo criado.
Você criou a expressão AVG(gastoPerCapita) no seu gráfico?
E por último, vc recarregou o aquivo (CTRL + R) depois que fizeste estas mudanças?
Pelo o que eu entendi, vc tem na tabela [SAÚDE INDIGENA] o campo exercício, onde creio eu que seja os anos, correto?
Considerando isso, temos do outro lado a tabela [POPULAÇÃO INDIGENA], onde os anos estão representados em campos diferentes. Para que possamos levar as coisas da forma mais simples para a sua view, é melhor ajeitarmos esta tabela de população.
[POPULAÇÃO INDÍGENA]: CrossTable(Exercício, Populacao, 1) LOAD [UG] AS [UG-UG ID], [2015], [2016], [2017], [2018] FROM [lib://Downloads/APLICAÇÃO QLIK SENSE.xlsx] (ooxml, embedded labels, table is [POPULAÇÃO INDÍGENA]);
Pronto! Agora vamos ter algo do tipo
UG-UG ID | Exercício | Populacao
Agora temos outra particularidade, o [Saldo R$] está na tabela [SAÚDE INDIGENA] e como vc precisa ter as duas informações na masma tabela, sugiro que você cria outra trabela chamada [GASTO PER CAPITA], onde podes seguir assim:
auxiliar: LOAD [UG-UG ID], Exercício, Populacao as pop RESIDENT [POPULAÇÃO INDÍGENA]; LEFT JOIN ([GASTO PER CAPITA]) LOAD [UG-UG ID], [Exercício], [Saldo R$] as saldo RESIDENT [SAÚDE INDIGENA]; [GASTO PER CAPITA]:
[UG-UG ID], [Exercício],
saldo / pop as gastoPerCapita
RESIDENT auxiliar;
DROP TABLE auxiliar;
Dependendo a versão do Qlik ou Sense, quando fazemos uma leitura de dados de uma tabela já existente em memória, ou seja, um resident, os dados não são carregados pois poucas versões entendem como redundância. Para contornar isso, podes criar um campo com qualquer valor (eu costumo a por 1), mas isso eu acredito que não será necessário.
Agora é só criares a expressão
AVG(gastoPerCapita)
que eu acredito que irá funcionar 😉