Pivot-Tabelle
Pivot-Tabellen (engl. pivot [pɪvət] aus frz. pivot, im Deutschen häufig französisch [pi.vo] ausgesprochen: Dreh-, Angelpunkt, Schlüsselfigur, Achse; auch Pivot-Table-Berichte oder pivot table reports) sind eine spezielle Art von Tabellen, die die Möglichkeit bieten, Daten einer Tabelle in verschiedener Art darzustellen und auszuwerten, ohne die Ausgangsdaten bzw. -tabelle(n) dabei ändern zu müssen.[1]
Der Nutzen liegt darin, große Datenmengen auf überschaubare Größen zu reduzieren.
Geschichte
Die Bezeichnung Pivot wurde zuerst 1991 in den USA von der Firma Brio Technology im Produkt DataPivot verwendet.[2] Obwohl Pivot-Tabelle ein allgemein verwendeter Begriff ist, hat Microsoft 1994 PivotTable in den USA als Marke eingetragen (aufgegeben bzw. verfallen 2020).[3]
Datenquellen
Datenquellen für Pivot-Tabellen können Listen und Datenbanken aus Tabellenkalkulationen, aber auch Tabellen aus externen Datenbank-Anwendungen, z. B. innerhalb eines Office-Paketes, sein. Moderne Tabellenkalkulationen besitzen dazu eine spezielle Funktion, mit der eine Menge gleichartiger Datensätze in Gruppen zusammengefasst werden kann und die als Ergebnis eine Pivot-Tabelle liefert. In den gängigen Office-Paketen hilft ein Assistent (Pivot-Tabellenassistent oder Datenpilot) bei der Erstellung von Pivot-Tabellen.
Struktur
Eine Pivot-Tabelle besteht aus mehreren Bereichen, von denen jeder beliebige Felder (Spaltenüberschriften) der Originaldaten aufnehmen kann. Typischerweise werden die erforderlichen Felder bei Erstellung der Pivot-Tabelle aus einer Liste ausgewählt und mit der Maus in den gewünschten Bereich gezogen.
Gliederung
Die Aufteilung der Felder auf Zeilen- und Spaltenfelder bestimmt die Struktur der Pivot-Tabelle. Bei Änderung dieser Aufteilung oder Reihenfolge werden nicht mehr oder weniger Daten angezeigt, sondern diese lediglich in anderer Form dargestellt. Das Verschieben eines Zeilen- oder Spaltenfeldes an einen anderen Platz wird auch als Pivotieren dieses Feldes bezeichnet. Zum Beispiel ergibt das Vertauschen von Zeilen- und Spaltenfeldern (unter Beibehaltung ihrer Reihenfolge) eine transponierte Tabelle.
Durch Doppelklick auf eine Zelle in einer Pivot-Tabelle werden Gruppen ein- und ausgeblendet („Drill-down“ und „Roll-up“), um mehr oder weniger Details darzustellen. Gehört die Zelle zu einem Datenfeld, werden nach dem Doppelklick alle einzelnen Datensätze aus den Originaldaten, die in die Berechnung dieser Zelle mit einfließen, auf einem separaten Tabellenblatt dargestellt.
Nach welchen Feldern gruppiert wird und welche Felder ausgegeben werden, kann der Benutzer frei wählen und auch nach Erstellung der Pivot-Tabelle interaktiv verändern, ohne die gesamte Erstellung wiederholen zu müssen. Bei Gruppierung nach zwei oder mehr Feldern kann die Pivot-Tabelle als Kreuztabelle angezeigt werden, was ihre Übersichtlichkeit erhöht.
Anwendungsbeispiel „Gruppieren nach Feld X“ heißt, dass man alle Datensätze aus der Original-Tabelle, die in der Spalte X exakt den gleichen Inhalt haben, zu je einem einzigen Datensatz in der Ergebnis-Tabelle zusammenfasst (Aggregieren zu Kategorien). Die Ergebnis-Tabelle enthält also alle in der Original-Tabelle auftretenden Kategorien nur je einmal. Sind in der Original-Tabelle alle Einträge verschieden, hat die daraus aggregierte Tabelle genau so viele Einträge, sind hingegen alle Einträge identisch, hat sie nur einen einzigen Eintrag.
Gibt es in einer Spalte der zu analysierenden Daten überwiegend verschiedene Werte (z. B. Messwerte mit vielen signifikanten Stellen), ist eine Gruppierung nach dieser Spalte mittels Pivot-Tabelle nicht sinnvoll. In diesem Fall muss man zuvor selbst geeignete Klassen (z. B. Intervalle) definieren und als neue Spalte den Ausgangsdaten hinzufügen. Eine Ausnahme sind Spalten mit Datumsangaben, die in verschiedenen Programmen direkt in der Pivot-Tabelle nach Tagen, Monaten, Quartalen etc. gruppiert werden können.
Feldtypen
Folgende Bereiche werden unterschieden:
- Zeilenfelder
- Ein hierher gezogenes Feld bewirkt, dass die Ausgangsdaten nach diesem Feld gruppiert werden. Für jeden verschiedenen Feldinhalt, der in den Ausgangsdaten vorkommt, wird eine Zeile in der Pivot-Tabelle angelegt. Werden zwei Felder als Zeilenfelder ausgewählt, dann werden innerhalb jeder zum ersten Feld gehörigen Gruppe alle Gruppen, die zum zweiten Feld gehören, in der Pivot-Tabelle dargestellt. Bei mehr als zwei Zeilenfeldern setzt sich diese Aufteilung entsprechend für alle Felder fort. Die Reihenfolge der Zeilenfelder ist relevant und wird vom Benutzer sinnvollerweise so gewählt, dass das Ergebnis möglichst übersichtlich ist.
- Spaltenfelder
- Bewirken analog wie Zeilenfelder eine Gruppierung; die verschiedenen Inhalte eines Spaltenfeldes werden jedoch nicht in Zeilen, sondern in Spalten dargestellt. Verwendet der Benutzer zugleich Zeilen- und Spaltenfelder, hat er eine Kreuztabelle erstellt.
- Datenfelder
- Bestimmen, was im Schnittpunkt von Zeilen und Spalten dargestellt wird. Für jedes Datenfeld wird mittels einer Aggregationsfunktion (wie z. B. „Summe“ oder „Anzahl der Datensätze“) bewirkt, dass in jeder Zelle der Pivot-Tabelle genau ein Wert eingetragen wird, auch wenn es viele Datensätze gibt, die Mitglied in den zu der Zelle gehörigen Gruppen sind. Werden mehrere Datenfelder gewählt, kann der Benutzer entscheiden, ob die verschiedenen Datenfelder nebeneinander in Spalten oder untereinander in Zeilen dargestellt werden sollen (exakt wie für Spalten- und Zeilenfelder). Es kann auch dasselbe Feld mehrfach als Datenfeld verwendet werden (sinnvollerweise mit unterschiedlicher Aggregationsfunktion).
- Seitenfelder
- Erlauben eine Filterung, d. h. eine Einschränkung der Pivot-Tabelle auf jene Datensätze der Ausgangsmenge, die in den gewählten Seitenfeldern bestimmte Werte aufweisen.
Datenbanken
Das Prinzip der Pivotierung liegt auch den Ansichten in MOLAP-Datenbanken zugrunde. Diese nichtrelationalen Datenbanken sind multidimensional. Für Datenanalysen sind zwei Dimensionen in der Ansichtsebene, die weiteren Dimensionen befinden sich wie in der Pivotsicht aggregiert im Hintergrund.
Vergleich mit SQL
Pivot-Tabellen ermöglichen es, in einer Tabellenkalkulation Auswertungen durchzuführen, die in der Datenbankabfragesprache SQL mit einer Group-by-Klausel erzielt werden können. Mit den üblichen Funktionen, die Tabellenkalkulationen zur Berechnung von Zellinhalten bereitstellen, sind solche Gruppierungen nur sehr eingeschränkt oder gar nicht möglich.
Die verschiedenen Typen von Feldern einer Pivot-Tabelle entsprechen bestimmten Teilen einer SQL-Abfrage:
- Zeilen- und Spaltenfelder von Pivot-Tabellen entsprechen Feldern in der Group-by-Klausel.
- Datenfelder entsprechen Ausdrücken im Select-Teil des SQL-Befehls. Diese Ausdrücke enthalten notwendigerweise Aggregationsfunktionen wie z. B. die Summenfunktion.
- Seitenfelder entsprechen einfachen Bedingungen in der Having- bzw. Where-Klausel des SQL-Befehls.
Nicht alle Möglichkeiten, die SQL oder die Tabellenkalkulation selbst bieten, werden von Pivot-Tabellen unterstützt. Zum Beispiel stehen in Microsoft Excel nur einige vordefinierte Aggregationsfunktionen zur Verfügung; Median und 95-%-Quantil fehlen etwa.
Datenbankabfrageprogramme sind im Allgemeinen flexibler als Pivot-Tabellen, d. h. mit SQL können mehr Fragen beantwortet werden. Die Abfrageprogramme bieten jedoch typischerweise weniger Möglichkeiten zur ansprechenden Aufbereitung der Ergebnisse und sind weniger komfortabel zu bedienen. Viele Programme können Datensätze nicht als Kreuztabelle ausgeben und spezielle Formatierungen sind nur in Handarbeit (d. h. ohne Assistenten und Steuerelemente) oder gar nicht möglich.
Besonderheiten
Aus Performancegründen werden Pivot-Tabellen im Allgemeinen nicht automatisch bei jeder Änderung der Ausgangsdaten aktualisiert, wie dies bei sonstigen Funktionen in Tabellenkalkulationen üblich ist. Die Aktualisierung muss der Benutzer bei Bedarf manuell starten.
Die Auswertung erfolgt nach Datentypen, so werden z. B. die Zahl 12.03, der Text 12.03 und das Datum 12.03 separat ausgewertet. Bei nicht konsistent gepflegter Datengrundlage kann dies zu Fehlern führen.
Bei einigen Office-Paketen kann man Pivot-Tabellen grafisch als interaktiven Pivot-Chart (deutsch: Pivot-Diagramm) darstellen.
Weblinks
- www.ooowiki.de/PivotTabelle – Kurzdefinition und Grafik zur Veranschaulichung des Funktionsprinzips im Wiki von OpenOffice.org
- www.ooowiki.de/DatentabellenAuswerten/PivotTabelle – Anwendungsbeispiel für eine Pivot-Tabelle in OpenOffice.org Calc
- www.ooowiki.de/PivotdatenZuordnen – Zugriff auf Pivottabellen über die Funktion PIVOTDATENZUORDNEN (engl. GETPIVOTDATA) in OpenOffice.org Calc
- Übungen mit Microsoft-Excel-Pivot-Tabellen von Helmut Mittelbach bei excelmexel.de
- Pivottabellen in Excel (PDF; 1,8 MB) bei www.luis.uni-hannover.de
- Anleitungen für Pivot-Tabellen – Übersicht über Pivot-Tabellen und Anleitungen, um Pivot-Tabellen in Excel, OpenOffice/LibreOffice und Google Docs zu erstellen
Einzelnachweise
- Pivottabellen in Excel (PDF; 752 kB), Seite 1: „Einleitung“ bei c-c-center.de vom April 2003, abgerufen am 23. Juni 2014.
- Cross tab analysis and reporting method. 24. Dezember 1996 (google.com [abgerufen am 21. März 2020]).
- Trademark Status & Document Retrieval. Abgerufen am 10. Juni 2020.