Como adicionar campos calculados - Amazon QuickSight

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Como adicionar campos calculados

Crie campos calculados para transformar seus dados usando uma ou mais das seguintes opções:

  • Operadores

  • Funções

  • Funções agregadas (você só pode adicioná-las a uma análise)

  • Campos contendo dados

  • Outros campos calculados

Você pode adicionar campos calculados a um conjunto de dados durante a preparação de dados ou na página de análise. Quando adicionar um campo calculado a um conjunto de dados durante a preparação dos dados, ele estará disponível para todas as análises que usarem esse conjunto de dados. Ao adicionar um campo calculado a um conjunto de dados em uma análise, ele só estará disponível nessa análise.

As análises oferecem suporte a operações de linha única e a operações de agregação. Operações de linha única são aquelas que fornecem um resultado (possivelmente) diferente para cada linha. Operações de agregação fornecem resultados que são sempre os mesmos para conjuntos inteiros de linhas. Por exemplo, se você usar uma função de sequência de caracteres simples sem nenhuma condição, ela alterará cada linha. Se você usar uma função de agregação, ela se aplicará a todas as linhas em um grupo. Se você solicitar o valor total de vendas para os EUA, o mesmo número se aplicará ao conjunto inteiro. Se você solicitar dados sobre um estado específico, o total de vendas será alterado para refletir o novo agrupamento. Ele ainda fornece um resultado para o conjunto inteiro.

Ao criar o campo calculado agregado dentro da análise, você pode fazer busca detalhada nos dados. O valor desse campo agregado é recalculado apropriadamente para cada nível. Esse tipo de agregação não é possível durante a preparação do conjunto de dados.

Por exemplo, digamos que você deseja descobrir a porcentagem de lucro de cada país, região e estado. Você pode adicionar um campo calculado à sua análise, (sum(salesAmount - cost)) / sum(salesAmount). Esse campo será calculado para cada país, região e estado, no momento em que seu analista fizer uma busca detalhada na área geográfica.

Como adicionar campos calculados a uma análise

Quando você adiciona um conjunto de dados a uma análise, cada campo calculado que existe no conjunto de dados é adicionado à análise. Você pode adicionar mais campos calculados no nível da análise para criar campos calculados que estejam disponíveis somente nessa análise.

Para adicionar um campo calculado a uma análise
  1. Abra o console de QuickSight .

  2. Abra a análise que você deseja alterar.

  3. No painel Dados, escolha Adicionar no canto superior esquerdo e escolha + CAMPO CALCULADO.

    1. No editor de cálculos que é aberto, faça o seguinte:

    2. Insira um nome para o campo calculado.

    3. Insira uma fórmula usando campos do seu conjunto de dados, funções e operadores.

  4. Quando terminar, escolha Save (Salvar).

Para obter mais informações sobre como criar fórmulas usando as funções disponíveis em QuickSight, consulteFunção de campo calculada e referência do operador para a Amazon QuickSight .

Como adicionar campos calculados a um conjunto de dados

QuickSight Os autores da Amazon podem gerar campos calculados durante a fase de preparação de dados da criação de um conjunto de dados. Quando você cria um campo calculado para um conjunto de dados, o campo se torna uma nova coluna no conjunto de dados. Todas as análises que usam o conjunto de dados herdam os campos calculados do conjunto de dados.

Se o campo calculado operar no nível da linha e o conjunto de dados estiver armazenadoSPICE, QuickSight computará e materializará o resultado em. SPICE Se o campo calculado depender de uma função de agregação, QuickSight retém a fórmula e executa o cálculo quando a análise for gerada. Esse tipo de campo calculado é chamado de campo calculado não materializado.

Para adicionar ou editar um campo calculado de um conjunto de dados
  1. Abra o conjunto de dados com o qual deseja trabalhar. Para ter mais informações, consulte Como editar conjuntos de dados.

  2. Na página de preparação dos dados, faça um dos seguintes procedimentos:

    • Para criar um campo, escolha Adicionar campo calculado à esquerda.

    • Para editar um campo calculado existente, escolha-o em Campos calculados à esquerda e selecione Editar no menu de contexto (clique com o botão direito do mouse).

    Edit calculated field interface showing YoY%diff formula and function categories.
  3. No editor de cálculo, insira um nome descritivo para Adicionar título, dando um nome ao novo campo calculado. Esse nome aparece na lista de campos no conjunto de dados, portanto, deve ser semelhante aos outros campos. Para esse exemplo, definimos o nome do campo como Total Sales This Year.

  4. (Opcional) Adicione um comentário, por exemplo, para explicar o que a expressão faz, colocando o texto em barras e asteriscos.

    /* Calculates sales per year for this year*/
  5. Identifique métricas, funções e outros itens a serem usados. Neste exemplo, precisamos identificar o seguinte:

    • A métrica a ser usada

    • Funções: ifelse e datediff

    Queremos criar uma declaração como: “Se a venda aconteceu durante este ano, mostre o total de vendas, caso contrário, mostre 0”.

    Para adicionar a função ifelse, abra a lista de Funções. Escolha Tudo para fechar a lista de todas as funções. Agora você deve ver os grupos de funções: Agregado, Condicional, Data e assim por diante.

    Escolha Condicional e clique duas vezes em ifelse para adicioná-lo ao espaço de trabalho.

    ifelse()
  6. Coloque o cursor dentro dos parênteses no espaço de trabalho e adicione três linhas em branco.

    ifelse( )
  7. Com o cursor na primeira linha em branco, encontre a função dateDiff. Está listada em Funções em Datas. Você também pode encontrá-la inserindo date em Funções de pesquisa. A função dateDiff retorna todas as funções que têm date como parte do nome. Ela não retorna todas as funções listadas em Datas; por exemplo, a função now está faltando nos resultados da pesquisa.

    Clique duas vezes em dateDiff para adicioná-lo à primeira linha em branco da declaração ifelse.

    ifelse( dateDiff() )

    Adicione os parâmetros que dateDiff usa. Coloque o cursor dentro dos parênteses dateDiff para começar a adicionar date1, date2 e period:

    1. Para date1: o primeiro parâmetro é o campo que contém a data. Encontre-o em Campos e adicione-o ao espaço de trabalho clicando duas vezes nele ou inserindo o nome.

    2. Para date2, adicione uma vírgula e escolha truncDate() em Funções. Entre parênteses, adicione o período e a data, assim: truncDate( "YYYY", now() )

    3. Para period: adicione uma vírgula depois de date2 e insira YYYY. Esse é o período do ano. Para ver uma lista de todos os períodos compatíveis, encontre dateDiff na lista Funções e abra a documentação selecionando Saiba mais. Se você já estiver visualizando a documentação, como agora, consulte dateDiff.

    Adicione alguns espaços para facilitar a leitura, se quiser. A expressão deve ser algo semelhante a:

    ifelse( dateDiff( {Date}, truncDate( "YYYY", now() ) ,"YYYY" ) )
  8. Especifique o valor de retorno. Para o nosso exemplo, o primeiro parâmetro em ifelse precisa retornar um valor de TRUE ou FALSE. Como queremos o ano atual e o estamos comparando com este ano, especificamos que a declaração dateDiff deve retornar 0. A parte if de ifelse é avaliada como verdadeira para linhas em que não há diferença entre o ano da venda e o ano atual.

    dateDiff( {Date}, truncDate( "YYYY", now() ) ,"YYYY" ) = 0

    Para criar um campo de TotalSales para o ano passado, você pode mudar 0 para 1.

    Outra maneira de fazer a mesma coisa é usar addDateTime em vez de truncDate. Então, para cada ano anterior, você altera o primeiro parâmetro para addDateTime a fim de representar cada ano. Para isso, use -1 para o ano passado, -2 para o ano anterior a ele e assim por diante. Se você usar addDateTime, deixe a função dateDiff em = 0 para cada ano.

    dateDiff( {Discharge Date}, addDateTime(-1, "YYYY", now() ) ,"YYYY" ) = 0 /* Last year */
  9. Mova o cursor para a primeira linha em branco, logo abaixo de dateDiff. Adicione uma vírgula.

    Para a parte then da declaração ifelse, precisamos escolher a medida (métrica) que contém o valor das vendas, TotalSales.

    Para escolher um campo, abra a lista Campos e clique duas vezes em um campo para adicioná-lo à tela. Também é possível inserir o nome. Adicione chaves { } ao redor dos nomes que contenham espaços. É provável que sua métrica tenha um nome diferente. Você consegue saber qual campo é uma métrica pelo sinal numérico na frente dele (#).

    Agora, a expressão deve ser semelhante à que é mostrada a seguir.

    ifelse( dateDiff( {Date}, truncDate( "YYYY", now() ) ,"YYYY" ) = 0 ,{TotalSales} )
  10. Adicione uma cláusula else. A função ifelse não exige uma, mas queremos adicioná-la. Para fins de geração de relatórios, normalmente não é desejado ter valores nulos, porque às vezes as linhas com nulos são omitidas.

    Definimos a parte else de ifelse como 0. O resultado é que esse campo é 0 para linhas que contêm vendas de anos anteriores.

    Para isso, na linha em branco, adicione uma vírgula e depois um 0. Se tiver adicionado o comentário no início, sua expressão ifelse final deve ter a aparência a seguir.

    /* Calculates sales per year for this year*/ ifelse( dateDiff( {Date}, truncDate( "YYYY", now() ) ,"YYYY" ) = 0 ,{TotalSales} ,0 )
  11. Salve seu trabalho escolhendo Salvar no canto superior direito.

    Se houver erros na sua expressão, o editor exibirá uma mensagem de erro na parte inferior. Verifique se há uma linha ondulada vermelha na expressão. Em seguida, passe o cursor sobre essa linha para ver qual é a mensagem de erro. Os erros comuns incluem pontuação ausente, parâmetros ausentes, erros ortográficos e tipos de dados inválidos.

    Para evitar fazer alterações, escolha Cancelar.

Para adicionar um valor de parâmetro a um campo calculado
  1. Você pode fazer referência a parâmetros em campos calculados. Ao adicionar o parâmetro à sua expressão, você adiciona o valor atual desse parâmetro.

  2. Para adicionar um parâmetro, abra a lista Parâmetros e selecione o parâmetro cujo valor você deseja incluir.

  3. (Opcional) Para adicionar manualmente um parâmetro à expressão, digite o nome dele. Em seguida, coloque-o entre chaves {} e prefixe-o com um $, por exemplo, ${parameterName}.

Você pode alterar o tipo de dados de qualquer campo no seu conjunto de dados, incluindo os tipos de campos calculados. Você só pode escolher tipos de dados que correspondam aos dados que estão no campo.

Para alterar o tipo de dados de um campo calculado
  • Em Campos calculados (à esquerda), escolha o campo que deseja alterar e selecione Alterar tipo de dados no menu de contexto (clique com o botão direito do mouse).

Ao contrário dos outros campos no conjunto de dados, os campos calculados não podem ser desabilitados. Em vez disso, exclua-os.

Para excluir um campo calculado
  • Em Campos calculados (à esquerda), escolha o campo que deseja alterar e selecione Excluir no menu de contexto (clique com o botão direito do mouse).

Tratamento de valores decimais em campos calculados

Quando seu conjunto de dados usa o modo de Direct Query, o cálculo do tipo de dados decimal é determinado pelo comportamento do mecanismo de origem do qual o conjunto de dados se origina. Em alguns casos específicos, QuickSight aplica manipulações especiais para determinar o tipo de dados do cálculo de saída.

Quando seu conjunto de dados usa o modo de consulta do SPICE e um campo calculado é materializado, o tipo de dados do resultado depende dos operadores de função específicos e do tipo de dados da entrada. As tabelas abaixo mostram o comportamento esperado para alguns campos numéricos calculados.

Operadores unários

A tabela a seguir mostra qual tipo de dados é gerado com base no operador que você usa e no tipo de dados do valor inserido. Por exemplo, se você inserir um número inteiro em um cálculo abs, o tipo de dados do valor de saída será inteiro.

Operador Tipo de entrada Tipo de saída
abs Fixado em decimal Fixado em decimal
Int Int
Flutuação decimal Flutuação decimal
ceil Fixado em decimal Int
Int Int
Flutuação decimal Int
exp Fixado em decimal Flutuação decimal
Int Flutuação decimal
Flutuação decimal Flutuação decimal
floor Fixado em decimal Int
Int Int
Flutuação decimal Int
ln Fixado em decimal Flutuação decimal
Int Flutuação decimal
Flutuação decimal Flutuação decimal
log Fixado em decimal Flutuação decimal
Int Flutuação decimal
Flutuação decimal Flutuação decimal
round Fixado em decimal Fixado em decimal
Int Fixado em decimal
Flutuação decimal Fixado em decimal
sqrt Fixado em decimal Flutuação decimal
Int Flutuação decimal
Flutuação decimal Flutuação decimal

Operadores binários

As tabelas a seguir mostram qual tipo de dados é gerado com base nos tipos de dados dos dois valores que você insere. Por exemplo, para um operador aritmético, se você fornecer dois tipos de dados inteiros, o resultado da saída do cálculo será um número inteiro.

Para operadores básicos (+, -, *):

Inteiro Fixado em decimal Flutuação decimal

Inteiro

Inteiro

Fixado em decimal

Flutuação decimal

Fixado em decimal

Fixado em decimal

Fixado em decimal

Flutuação decimal

Flutuação decimal

Flutuação decimal

Flutuação decimal

Flutuação decimal

Para operadores de divisão (/):

Inteiro Fixado em decimal Flutuação decimal

Inteiro

Flutuação decimal

Flutuação decimal

Flutuação decimal

Fixado em decimal

Flutuação decimal

Fixado em decimal

Flutuação decimal

Flutuação decimal

Flutuação decimal

Flutuação decimal

Flutuação decimal

Para operadores exponenciais e de modificação (^, %):

Inteiro Fixado em decimal Flutuação decimal

Inteiro

Flutuação decimal

Flutuação decimal

Flutuação decimal

Fixado em decimal

Flutuação decimal

Flutuação decimal

Flutuação decimal

Flutuação decimal

Flutuação decimal

Flutuação decimal

Flutuação decimal