Häufig ist es sinnvoll die Geschäftszahlen nach Altersklassen der Kunden zu betrachten. Historisch gesehen ist es hierbei wichtig, das Alter in Bezug auf den Kaufzeitpunkt zu ermitteln und nicht etwa in Bezug auf das aktuelle Tagesdatum. Daher zeige ich Dir im aktuellen Beitrag, wie Du das Kundenalter zum Zeitpunkt des Kaufes ermitteln und optimal in Power BI integrieren kannst.
Als Abonnent meines Newsletters erhältst Du die Beispieldateien zu den Beiträgen dazu. Hier geht’s zum Abonnement des Newsletters!
Die Zielstellung
Für mein heutiges Praxisbeispiel möchte ich meinen Umsatz je Alterklasse der Kunden zum Zeitpunkt des Kaufes ausweisen. Da ich in meinem analytischen Datenmodell Umsätze potentiell über viele Jahre auswerten möchte, ergibt es keinen Sinn, das Kundenalter als Differenz des heutigen Datums zum Geburtstag des Kunden vorzunehmen. Damit mein Bericht eine nutzbare Aussage hat, muss ich das Kundenalter als Differenz aus dem Kaufdatum uns des Geburtstags kalkulieren.
Wie stelle ich das in Power BI am besten an?
Die Ausgangssituation
Als Basis für meine Auswertung dient folgendes Datenmodell. Ich habe eine Kundentabelle, die lediglich zwei Datensätze beinhaltet. Die Umsatztabelle verfügt über 8 Umsätze, jeweils vier von Kunde 1 und vier von Kunde 2.
Ein erster Ansatz, um aus diesem Datenmodell heraus eine Bericht zu erstellen, der den Umsatz nach dem Alter analysierbar macht, könnte wie folgt aussehen.
Ein erster Lösungsansatz
Da es sich beim Alter des Kunden um ein Merkmal einer Dimension (der Dimension Kunde) handelt, könnte ich jetzt auf die Idee kommen, wie in meinem letzten Beitrag über Slowly Changing Dimensions beschrieben, über den Import- und Transformationsprozess die Kundentabelle anzupassen und über einen sog. SurrogateKey mit der Umsatztabelle zu verknüpfen. Da sich das Alter des Kunden jedoch einmal pro Jahr ändert, ist das nicht die Vorgehensweise, die ich hier darstellen möchte. Stattdessen möchte ich zunächst der Umsatztabelle eine neue Spalte hinzufügen, die das Alter des Kunden zum Zeitpunkt des Kaufes ausweist.
Dafür gehe ich wie folgt vor…
Zusammenführen von Umsatz- und Kundentabelle
Ich sorge in Power Query dafür, dass ich das Kundenalter zum Zeitpunktes des Kaufes in der Umsatztabelle kalkulieren kann. Dafür führe ich einen Join zwischen der Umsatz- und der Kundentabelle aus und hole mir das Geburtsdatum des Kunden so in die Umsatztabelle.
Mit dem Geburtsdatum in der Faktentabelle, bin ich nun in der Lage, für jeden einzelnen erzeugten Umsatz (also für jeden Datensatz in der Umsatztabelle), das Alter des Kunden zu ermitteln.
Kalkulation des Alters als Spalte in der Umsatztabelle
In einem weiteren Schritt berechne ich das Alter des Kunden zum Zeitpunkt des Kaufes in einer weiteren berechneten Spalte. Die Formel für die berechnete Spalte kannst Du dem folgenden Screenshot entnehmen.
Da ich lediglich das Alter, nicht aber das Geburtsdatum in der Umsatztabelle benötige, lösche ich die Spalte Geburtstag anschließend.
Die Zwischenlösung
Mit den nun vorliegenden Tabellen und dem darauf basierenden Datenmodell, kann ich nun folgende Visualisierung erstellen.
In der vorliegenden Tabelle kann ich beispielsweise sehen, dass Gabi Schulze im Alter von 28, 43, 48 und 63 Jahren bei mir gekauft hat. Diese Darstellung ist mit jedoch zu granular. Für meine Analyse reichen mir Altersintervalle von beispielsweise 5, oder 10 Jahren. Ich zeige Dir, wie ich das angehen würde.
Ein optimierter Lösungsansatz
Natürlich könnte ich die Altersintervalle als weitere Spalte(n) in die Umsatztabelle schreiben. Jedoch wäre das u. a. für die Übersichtlichkeit beim Nutzer suboptimal. Daher wähle ich den Ansatz einer weiteren Tabelle für die Altersklassifizierungen.
Erweiterung des Datenmodells um die Tabelle Altersklassifizierung
Es ist sinnvoll, eine neue Tabelle mit ins Spiel zu bringen: die Tabelle Altersklassifizierungen. Den Inhalt und die Struktur der Tabelle, siehst Du auf der rechten Seite des nachfolgenden Screenshots:
Die zuvor in die Umsatztabelle integrierte Spalte Alter dient nun als Schlüssel für die Beziehung zwischen der Umsatztabelle und der Tabelle Altersklassifizierung. Die Spalten 5-Jahresintervall und 10-Jahresintervall können nun beispielsweise in einer Matrix genutzt werden, um den Umsatz wie folgt darzustellen:
Bis zum nächsten Mal und denk dran: Sharing is caring. Wenn Dir der Beitrag gefallen hat, dann teile ihn gerne. Falls Du Anmerkungen hast, schreibe gerne einen Kommentar, oder schicke mir eine Mail an lars@ssbi-blog.de
Viele Grüße aus Hamburg,
Lars
Lars ist Berater, Entwickler und Trainer für Microsoft Power BI. Er ist zertifizierter Power BI-Experte und Microsoft Trainer. Für sein Engagement in der internationalen Community wurde Lars seit 2017 jährlich durch Microsoft der MVP-Award verliehen. Lies hier mehr…
Neueste Kommentare