Zu Hauptinhalt springen Zu ergänzendem Inhalt springen

Arbeiten mit Kreuztabellen im Datenladeskript

Kreuztabellen sind eine häufig verwendete Art von Tabellen, die aus einer Matrix von Werten an den Schnittstellen zweier rechtwinklig angeordneten Listen von Spalten- und Zeilenüberschriften bestehen. Dieses Format ist üblicherweise eher ungeeignet, um die Daten mit anderen Datentabellen zu verknüpfen.

Dieser Abschnitt beschreibt, wie Sie eine Kreuztabelle entpivotieren – d. h., bestimmte Teile der Daten in Zeilen umwandeln –, indem Sie einer LOAD-Anweisung im Datenladeskript das Präfix crosstable voranstellen.

Entpivotieren einer Kreuztabelle mit nur einer qualifizierenden Spalte

Manchmal stehen vor der Kreuztabelle noch mehrere qualifizierende Spalten, die als normale Felder zu betrachten sind. In diesem Fall gibt es eine Spalte, Year, und eine Umsatzdatenmatrix pro Monat.

Kreuztabelle mit einer qualifizierenden Spalte
YearJanFebMarAprMayJun
2008456578127822
2009112322224585
2010655622791256
2011452432785515
2012455635786882

Wird diese Tabelle auf die übliche Weise in Qlik Sense eingelesen, ergeben sich ein Feld mit der Bezeichnung Year und je ein Feld für jeden der aufgeführten Monate. Dies ist allerdings ungünstig. Sinnvoller ist es, wenn drei Felder entstehen:

  • In diesem Fall ist die Spalte Year in der vorstehenden Tabelle grün markiert.
  • Das Attribut-Feld – in diesem Fall die MonatsnamenJan - Jun – ist gelb markiert. Dieses Feld kann entsprechend Month benannt werden.
  • Die Datenmatrixwerte sind blau gekennzeichnet. In diesem Fall stehen sie für die Umsatzzahlen, die entsprechendSales benannt werden können.

Dies erreichen Sie, indem Sie den Zusatz crosstable vor dem entsprechenden Befehl LOAD oder SELECT einfügen.

crosstable (Month, Sales) LOAD * from ex1.xlsx;

Damit wird die folgende Tabelle in Qlik Sense erzeugt:

Tabelle mit Crosstable-Zusatz, der dem LOAD- oder SELECT-Befehl hinzugefügt wurde
YearMonthSales
2008Jan45
2008Feb65
2008Mär78
2008Apr12
2008Mai78
2008Jun22
2009Jan11
2009Feb23
.........

Entpivotieren einer Kreuztabelle mit zwei qualifizierenden Spalten

Hier befinden sich zwei Spalten vor der Wertematrix.

Kreuztabelle mit zwei qualifizierenden Spalten
SalesmanYearJanFebMarAprMayJun
A2008456578127822
A2009112322224585
A2010655622791256
A2011452432785515
A2012455635786882
B2008577790249034
B2009233534345797
B2010776834912468
B2011573644906727
B2012576847908094

Die Zahl dieser Spalten wird als dritter Parameter zum Zusatz crosstable eingefügt:

crosstable (Month, Sales, 2) LOAD * from ex2.xlsx;

Qlik Sense zeigt dann folgendes Ergebnis an:

Tabelle mit qualifizierenden Spalten, die als dritter Parameter zum Crosstable-Zusatz eingefügt werden
VertriebsmitarbeiterYearMonthSales
A2008Jan45
A2008Feb65
A2008Mär78
A2008Apr12
A2008Mai78
A2008Jun22
A2009Jan11
A2009Feb23
............

Weitere Informationen

 

Hat diese Seite Ihnen geholfen?

Wenn Sie ein Problem mit dieser Seite oder ihrem Inhalt feststellen, sei es ein Tippfehler, ein ausgelassener Schritt oder ein technischer Fehler, informieren Sie uns bitte!