Tabela dinâmica - Pivot table

Uma tabela dinâmica é uma tabela de valores agrupados que agrega os itens individuais de uma tabela mais extensa (como de um banco de dados , planilha ou programa de inteligência de negócios ) em uma ou mais categorias discretas. Este resumo pode incluir somas, médias ou outras estatísticas, que a tabela dinâmica agrupa usando uma função de agregação escolhida aplicada aos valores agrupados.

As tabelas dinâmicas são uma técnica de processamento de dados . Eles organizam e reorganizam (ou "pivotam") as estatísticas para chamar a atenção para informações úteis. Isso leva a encontrar números e fatos rapidamente, tornando-os essenciais para a análise de dados . Em última análise, isso leva a ajudar empresas ou indivíduos a tomar decisões informadas.

Embora a tabela dinâmica seja um termo genérico, a Microsoft registrou a marca PivotTable nos Estados Unidos em 1994 (cancelada em 2020).

História

Em seu livro Pivot Table Data Crunching , Bill Jelen e Mike Alexander referem-se a Pito Salas como o "pai das tabelas dinâmicas". Enquanto trabalhava em um conceito para um novo programa que viria a se tornar o Lotus Improv , Salas observou que as planilhas têm padrões de dados. Uma ferramenta que pudesse ajudar o usuário a reconhecer esses padrões ajudaria a construir modelos de dados avançados rapidamente. Com o Improv, os usuários podem definir e armazenar conjuntos de categorias e, em seguida, alterar as visualizações arrastando os nomes das categorias com o mouse. Essa funcionalidade central forneceria o modelo para tabelas dinâmicas.

A Lotus Development lançou o Improv em 1991 na plataforma NeXT . Poucos meses após o lançamento do Improv, a Brio Technology publicou uma implementação autônoma do Macintosh , chamada DataPivot (com tecnologia finalmente patenteada em 1999). A Borland adquiriu a tecnologia DataPivot em 1992 e a implementou em seu próprio aplicativo de planilha, Quattro Pro .

Em 1993, a versão do Improv para Microsoft Windows apareceu. No início de 1994, o Microsoft Excel  5 trouxe ao mercado uma nova funcionalidade chamada "Tabela Dinâmica". A Microsoft melhorou ainda mais esse recurso em versões posteriores do Excel:

  • O Excel 97 incluiu um novo e aprimorado Assistente de Tabela Dinâmica, a capacidade de criar campos calculados e novos objetos de cache dinâmico que permitem aos desenvolvedores escrever macros do Visual Basic for Applications para criar e modificar tabelas dinâmicas
  • O Excel 2000 introduziu os "Gráficos Dinâmicos" para representar graficamente os dados da tabela dinâmica

Em 2007, a Oracle Corporation disponibilizou PIVOTe UNPIVOToperadoras no Oracle Database 11g.

Mecânica

Para entrada e armazenamento de dados típicos, os dados geralmente aparecem em tabelas planas , o que significa que consistem apenas em colunas e linhas, como na seguinte parte de uma planilha de amostra que mostra dados sobre os tipos de camisa:

Pivottable-Flatdata.png

Embora tabelas como essas possam conter muitos itens de dados, pode ser difícil obter informações resumidas delas. Uma tabela dinâmica pode ajudar a resumir rapidamente os dados e destacar as informações desejadas. O uso de uma tabela dinâmica é extremamente amplo e depende da situação. A primeira pergunta a fazer é: "O que estou procurando?" No exemplo aqui, vamos perguntar: "Quantas unidades vendemos em cada região para cada data de envio? ":

Pivottable-Pivoted.PNG

Uma tabela dinâmica geralmente consiste em campos de linha , coluna e dados (ou fatos ). Neste caso, a coluna é Data de Envio , a linha é Região e os dados que gostaríamos de ver são (soma de) Unidades . Esses campos permitem vários tipos de agregações , incluindo: soma, média, desvio padrão , contagem, etc. Nesse caso, o número total de unidades enviadas é exibido aqui usando uma agregação de soma .

Implementação

Usando o exemplo acima, o software encontrará todos os valores distintos para Região . Nesse caso, são eles: Norte , Sul , Leste , Oeste . Além disso, encontrará todos os valores distintos para Data de Envio . Com base no tipo de agregação, soma , resumirá o fato, as quantidades de Unidade , e os exibirá em um gráfico multidimensional. No exemplo acima, o primeiro datum é 66. Este número foi obtido encontrando todos os registros onde a Região era Leste e a Data do Envio era 31/01/2005 , e adicionando as Unidades dessa coleção de registros ( ou seja , células E2 a E7 ) juntos para obter um resultado final.

As tabelas dinâmicas não são criadas automaticamente. Por exemplo, no Microsoft Excel, deve-se primeiro selecionar todos os dados da tabela original e depois ir para a guia Inserir e selecionar "Tabela Dinâmica" (ou "Gráfico Dinâmico"). O usuário então tem a opção de inserir a tabela dinâmica em uma planilha existente ou criar uma nova planilha para abrigar a tabela dinâmica. Uma lista de campos da tabela dinâmica é fornecida ao usuário, listando todos os cabeçalhos de coluna presentes nos dados. Por exemplo, se uma tabela representa os dados de vendas de uma empresa, ela pode incluir Data de venda, Vendedor, Item vendido, Cor do item, Unidades vendidas, Preço por unidade e preço total. Isso torna os dados mais acessíveis.

Data de venda Vendedor Item vendido Cor do item Unidades vendidas Preço por unidade Preço total
01/10/2013 Jones Caderno Preto 8 25000 200000
02/10/2013 Principe Computador portátil vermelho 4 35000 140000
03/10/2013 George Mouse vermelho 6 850 5100
04/10/2013 Larry Caderno Branco 10 27000 270000
05/10/2013 Jones Mouse Preto 4 700 2800

Os campos que seriam criados ficarão visíveis no lado direito da planilha. Por padrão, o design do layout da tabela dinâmica aparecerá abaixo desta lista.

Os campos da tabela dinâmica são os blocos de construção das tabelas dinâmicas. Cada um dos campos da lista pode ser arrastado para este layout, que possui quatro opções:

  1. Filtros
  2. Colunas
  3. Linhas
  4. Valores

Alguns usos de tabelas dinâmicas estão relacionados à análise de questionários com respostas opcionais, mas algumas implementações de tabelas dinâmicas não permitem esses casos de uso. Por exemplo, a implementação no LibreOffice Calc desde 2012 não é capaz de processar células vazias.

Filtros

O filtro de relatório é usado para aplicar um filtro a uma tabela inteira. Por exemplo, se o campo "Cor do Item" for arrastado para esta área, a tabela construída terá um filtro de relatório inserido acima da tabela. Este filtro de relatório terá opções suspensas (Preto, Vermelho e Branco no exemplo acima). Quando uma opção é escolhida nesta lista suspensa ("Preto" neste exemplo), a tabela que seria visível conterá apenas os dados das linhas que possuem a "Cor do Item = Preto".

Colunas

Rótulos de coluna são usados ​​para aplicar um filtro a uma ou mais colunas que devem ser mostradas na tabela dinâmica. Por exemplo, se o campo "Vendedor" for arrastado para esta área, então a tabela construída terá os valores da coluna "Vendedor", ou seja , terá um número de colunas igual ao número do "Vendedor". Haverá também uma coluna adicionada de Total. No exemplo acima, esta instrução criará cinco colunas na tabela - uma para cada vendedor e Total geral. Haverá um filtro acima dos dados - rótulos de coluna - a partir do qual é possível selecionar ou desmarcar um determinado vendedor para a tabela dinâmica.

Esta tabela não terá nenhum valor numérico, pois nenhum campo numérico foi selecionado, mas quando ela for selecionada, os valores serão atualizados automaticamente na coluna de "Total geral".

Linhas

Os rótulos de linha são usados ​​para aplicar um filtro a uma ou mais linhas que devem ser mostradas na tabela dinâmica. Por exemplo, se o campo "Vendedor" for arrastado para esta área então a outra tabela de saída construída terá os valores da coluna "Vendedor", ou seja , terá um número de linhas igual ao número do "Vendedor". Haverá também uma linha adicional de "Grande Total". No exemplo acima, esta instrução criará cinco linhas na tabela - uma para cada vendedor e Total geral. Haverá um filtro acima dos dados - rótulos de linha - a partir do qual é possível selecionar ou desmarcar um determinado vendedor para a tabela dinâmica.

Esta tabela não terá nenhum valor numérico, pois nenhum campo numérico é selecionado, mas ao ser selecionado, os valores serão atualizados automaticamente na Linha do "Total Geral".

Valores

Isso geralmente leva um campo que possui valores numéricos que podem ser usados ​​para diferentes tipos de cálculos. No entanto, usar valores de texto também não seria errado; em vez de Soma, dará uma contagem. Portanto, no exemplo acima, se o campo "Unidades vendidas" for arrastado para esta área junto com o rótulo da linha de "Vendedor", a instrução adicionará uma nova coluna, "Soma das unidades vendidas", que terá valores contra cada vendedor.

Rótulos de linha Soma das unidades vendidas
Jones 12
Principe 4
George 6
Larry 10
total geral 32

Suporte de aplicativo

As tabelas dinâmicas ou a funcionalidade dinâmica são parte integrante de muitos aplicativos de planilhas e alguns softwares de banco de dados , além de serem encontradas em outras ferramentas de visualização de dados e pacotes de inteligência de negócios .

Planilhas

  • O Microsoft Excel oferece suporte a Tabelas Dinâmicas, que podem ser visualizadas por meio de Gráficos Dinâmicos.

Suporte de banco de dados

  • PostgreSQL , um sistema de gerenciamento de banco de dados relacional de objeto , permite a criação de tabelas dinâmicas usando o módulo tablefunc .
  • MariaDB , um fork do MySQL, permite tabelas dinâmicas usando o mecanismo de armazenamento CONNECT.
  • O Microsoft Access oferece suporte a consultas dinâmicas sob o nome de consulta "crosstab".
  • O Microsoft SQL Server oferece suporte a pivô a partir do SQL Server 2016 com as palavras-chave FROM ... PIVOT
  • O banco de dados Oracle oferece suporte à operação PIVOT.
  • Alguns bancos de dados populares que não suportam diretamente a funcionalidade de pivô, como SQLite , geralmente podem simular a funcionalidade de pivô usando funções embutidas, SQL dinâmico ou subconsultas. O problema com a dinamização nesses casos é geralmente que o número de colunas de saída deve ser conhecido no momento em que a consulta começa a ser executada; para dinamizar isso não é possível, pois o número de colunas é baseado nos próprios dados. Portanto, os nomes devem ser codificados permanentemente ou a consulta a ser executada deve ser criada dinamicamente (ou seja, antes de cada uso) com base nos dados.

Aplicativos da web

  • ZK , uma estrutura Ajax, também permite a incorporação de tabelas dinâmicas em aplicativos da web.

Linguagens de programação e bibliotecas

  • Linguagens de programação e bibliotecas adequadas para trabalhar com dados tabulares contêm funções que permitem a criação e manipulação de tabelas dinâmicas. O kit de ferramentas de análise de dados do Python pandas tem a função pivot_table e o método xs , útil para obter seções de tabelas dinâmicas. Enquanto R tem o metapacote Tidyverse , que contém uma coleção de ferramentas que fornecem funcionalidade de tabela dinâmica, bem como o pacote pivottabler.

Processamento analítico online

As tabelas dinâmicas do Excel incluem o recurso de consultar diretamente um servidor de processamento analítico online (OLAP) para recuperar dados em vez de obter os dados de uma planilha do Excel. Nessa configuração, uma tabela dinâmica é um cliente simples de um servidor OLAP. A Tabela Dinâmica do Excel não só permite a conexão com o Analysis Service da Microsoft, mas também com qualquer servidor compatível com o padrão OLAP XML for Analysis (XMLA).

Veja também

Referências

Leitura adicional