LuckyTemplates-Rang und benutzerdefinierte Gruppierung

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

Als Datenanalysten müssen wir häufig Werte aus einem Datensatz gruppieren und einordnen, um Trends und Erkenntnisse zu generieren. Allerdings weiß nicht jeder, wie man diese Aufgaben mit LuckyTemplates einfach erledigt.

Im heutigen Blog untersuchen wir ein Szenario, das LuckyTemplates-Rang- und benutzerdefinierte Gruppierungsfunktionen erfordert, um Ihnen zu zeigen, wie Sie genau das tun. Das vollständige Video dieses Tutorials können Sie unten in diesem Blog ansehen.

Für dieses Tutorial verwenden wir eine Datentabelle mit drei Spalten, nämlich Record IDs , Priorities und Minutes . Unser Ziel ist es, basierend auf der maximalen Minutenanzahl die oberen 5 % der Datensätze mit den Prioritäten 1 oder 2 zu identifizieren.

Inhaltsverzeichnis

Datensatz zum Erstellen von LuckyTemplates-Rang und -Gruppierung

So sieht der Datensatz in Power Query aus. Es gibt kein Attribut, um die Prioritäten 1 und 2 vom Rest zu trennen, sodass wir die M-Funktion Table.Partition verwenden müssen . Dadurch wird eine Hilfsspalte generiert, um die Prioritäten 1 und 2 von anderen Zeilen zu trennen.

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

LuckyTemplates-Funktion: Table.Partition

Um zu untersuchen, wie wir Table.Partition zum Segmentieren unserer Daten verwenden, öffnen wir zunächst den erweiterten Editor .

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

Fügen Sie im angezeigten Fenster eine neue Zeile hinzu, um eine neue Variable zu erstellen. Nennen wir die Variable Partitions . Fügen Sie die Funktion Table.Partition hinzu , die die folgenden Informationen erfordert.

  • Die Tabelle, die wir partitionieren möchten. In unserem Fall ist es die Quelle.
  • Die auszuwertende Spalte. Dies ist die Spalte in der Rückgabetabelle, in der die Regeln platziert werden. Das wird die Spalte „Priorität“ sein .
  • Die Anzahl der zu erstellenden Gruppen. Dies bezieht sich auch auf die Anzahl der zu partitionierenden Tabellen, und wir möchten 2 Tabellen haben . 
  • Eine Hash-Funktion. Um einen Hash-Wert zu erhalten, müssen wir eine Zahl verwenden. Beginnen wir die Hash-Funktion mit „ each if“ , gefolgt von einem Unterstrich, der den aktuellen Wert darstellt. Dann fügen wir hinzu, dass die Bedingung kleiner als drei ist , und geben dann null zurück, sonst eins

In Zeile 5 ändern wir Source in Partitions und erhalten so die folgende Lösung.

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

Klicken Sie auf „Fertig“ , um zu sehen, wie sich dies auf unsere Tabelle auswirkt. Wie unten gezeigt, erstellt die Table.Partition-Funktion eine Liste mit zwei verschachtelten Tabellen

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

Durch Klicken auf Tabelle 1 wird eine Vorschautabelle geöffnet, die alle Datensätze mit einer Priorität kleiner als drei (Prioritäten 1 und 2) enthält.

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

 Alle übrigen Zeilen befinden sich in Tabelle 2 .

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

Da die Prioritäten 1 und 2 nun in einer einzigen Tabelle zusammengefasst sind, können wir die Tabelle nun zur Berechnung unserer Top 5 % verwenden. 

LuckyTemplates-Funktion: Table.RowCount

Mit Table.RowCount kann die Anzahl der Zeilen ermittelt werden, die erforderlich sind, um die Anforderung von 5 % zu erfüllen. Es zählt die Anzahl der Zeilen mit den Prioritäten 1 und 2 und ermittelt dann die 5 % der erhaltenen Anzahl.

Öffnen Sie zunächst das Fenster „Erweiterter Editor“ in der oberen linken Ecke.

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

Dann fügen wir eine neue Zeile und eine neue Variable hinzu, die wir nRow nennen . Wir müssen unsere erste Tabelle extrahieren, indem wir ihren Variablennamen „ Partitionen“ aus Zeile 3 kopieren.

Als Nächstes verwenden wir den Positionsindexoperator, um auf das erste Element in der Liste der ersten Tabelle zuzugreifen. Wickeln Sie dann den Table.RowCount-Operator um Partitions(0). Wir multiplizieren es dann mit 0,05, um 5 % zu erhalten. 

Runden Sie die Zahl außerdem mit der Funktion „Number.Round“ auf eine Dezimalzahl von null . Abschließend ändern wir die letzte Zeile von Partitions in nRow. 

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

Dies sollte zwei zurückgeben, wie unten gezeigt.

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

Das Ergebnis bedeutet, dass wir zur Erfüllung der 5 %-Anforderung zwei Zeilen aus Tabelle 1 markieren müssen. Dazu können wir die neue M-Funktion Table.AddRankColumn verwenden. 

LuckyTemplates-Funktion: Table.AddRankColumn

In diesem Abschnitt verwenden wir die LuckyTemplates-Ranking-Funktion, um unsere Zeilen zu ordnen. Die Table.AddRankColumn wird verwendet, um basierend auf unseren Vergleichskriterien eine neue Ranking-Spalte an eine Tabelle anzuhängen.

Öffnen Sie zunächst das Fenster „Erweiterter Editor“ . Erstellen Sie Tabelle 1 und nennen Sie sie in einer neuen Zeile t1 . Verwenden Sie dann Table.AddRankColumn und fügen Sie unsere erste Tabelle Partitions (0) hinzu. Wir müssen auch einen neuen Spaltennamen zuweisen, den wir i nennen.

Für die Vergleichskriterien möchten wir die Minuten mithilfe von {“Minutes”, Order.Descending} von hoch nach niedrig ordnen . 

Fügen Sie abschließend ein RankKind=RankKind.Ordinal hinzu . Dadurch wird erzwungen, dass allen Elementen eine eindeutige Nummer zugewiesen wird, auch wenn sie als gleich bewertet werden. Dann ändern wir nRow in t1 , um Tabelle 1 zurückzugeben. 

Unsere Lösung sollte so aussehen. 

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

Klicken Sie auf „Fertig“ , um eine ähnliche Tabelle zu erhalten. 

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

Hinzufügen eines booleschen Filters

Wir werden unserer Tabelle auch einen booleschen Filter hinzufügen, da wir die Rangspalte nicht mehr behalten möchten. Stattdessen möchten wir einen booleschen Filter hinzufügen, um nur die beiden obersten Zeilen zu identifizieren, die wir ausschließen müssen. 

Kehren wir also zum Fenster „Erweiterter Editor“ zurück und fügen eine benutzerdefinierte Spalte hinzu. Fügen Sie mit der Funktion Table.AddColumn eine neue Zeile hinzu und rufen Sie die neue Spalte Exclude auf .

Für den ColumnGenerator können wir uns die neu erstellte Spalte ansehen, indem wir jedes i verwenden, das kleiner oder gleich unserer nRow- Nummer ist, also der Anzahl der auszuschließenden Zeilen. Wir werden ihnen auch einen Datentyp zuweisen, indem wir den Typ logical verwenden .

Unsere Lösung sollte so aussehen.

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

Klicken Sie auf „Fertig“ , um eine Tabelle zu erhalten, die der folgenden ähnelt.

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

LuckyTemplates-Funktion: Table.RemoveColumns

Wir benötigen unsere Hilfsspalte nicht mehr, sodass wir sie aus unserer Tabelle entfernen können. 

Lassen Sie uns also im Fenster „Erweiterter Editor“ Table.RemoveColumns verwenden und die Spalte i entfernen .

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

Klicken Sie dann auf Fertig

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

Tabellen kombinieren

Wir haben eine neue Version unserer verschachtelten Tabelle 1 erstellt und müssen das gleiche Layout für unsere verschachtelte Tabelle 2 erstellen. Und für diese Tabelle müssen wir eine Ausschlussspalte hinzufügen, in der alle Werte gleich TRUE sein sollten. 

Erstellen Sie im erweiterten Editor eine neue Variable mit dem Namen t2. Wir werden mit Table.AddColumn eine benutzerdefinierte Spalte hinzufügen und Partitions (1) aufrufen . Fügen Sie dann eine Exclude- Spalte hinzu und legen Sie den ColumnGenerator auf true fest. Geben Sie logical ein

Wir wollen t2 zurückgeben , indem wir Zeile 13 bearbeiten.

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

Wir sollten einen Tisch wie diesen bekommen.

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

Als letztes müssen wir diese beiden Tabellen noch einmal kombinieren. Fügen Sie im Fenster „Erweiterter Editor“ eine neue Variable mit dem Namen t hinzu, die t1 und t2 entspricht . 

LuckyTemplates-Rang und benutzerdefinierte Gruppierung

Klicken Sie auf „Fertig“ , um unsere Abschlusstabelle zu erhalten, die wie die folgende aussieht. Jetzt haben wir eine Tabelle, die anhand unserer vorgegebenen Kriterien geordnet und gruppiert ist und in der die besten 5 % zum Ausschluss markiert sind.

LuckyTemplates-Rang und benutzerdefinierte Gruppierung


Ranking-Analyse in LuckyTemplates: Erweiterte Erkenntnisse aus kombinierten Datensätzen
Ranking-Visualisierung in LuckyTemplates – Dynamische visuelle
LuckyTemplates-Dimensionen und -Gruppen zum Filtern von Tabellen in Berichten

Abschluss

In diesem Blog haben Sie gelernt, wie Sie die Funktionen Table.Partition , Table.AddRankColumn und Table.RemoveColumns in Power Query verwenden. Unser Beispieldatensatz enthält 44 Zeilen mit den Prioritäten 1 und 2, die wir erfolgreich gruppiert und eingestuft haben, wobei die oberen 5 % entsprechend gekennzeichnet sind.

Mit diesem neuen Wissen über die Verwendung dieser Funktionen können Sie nun LuckyTemplates-Rang- und benutzerdefinierte Gruppierungsfunktionen für Ihren nächsten Datensatz verwenden.

Alles Gute,

Melissa de Korte


So speichern und laden Sie eine RDS-Datei in R

So speichern und laden Sie eine RDS-Datei in R

Sie erfahren, wie Sie Objekte aus einer .rds-Datei in R speichern und laden. In diesem Blog wird auch behandelt, wie Sie Objekte aus R in LuckyTemplates importieren.

Was ist Self in Python: Beispiele aus der Praxis

Was ist Self in Python: Beispiele aus der Praxis

Was ist Self in Python: Beispiele aus der Praxis

First N Business Days Revisited – Eine DAX-Codierungssprachenlösung

First N Business Days Revisited – Eine DAX-Codierungssprachenlösung

In diesem Tutorial zur DAX-Codierungssprache erfahren Sie, wie Sie die GENERATE-Funktion verwenden und einen Kennzahltitel dynamisch ändern.

Präsentieren Sie Einblicke mithilfe der Multi-Threaded-Dynamic-Visuals-Technik in LuckyTemplates

Präsentieren Sie Einblicke mithilfe der Multi-Threaded-Dynamic-Visuals-Technik in LuckyTemplates

In diesem Tutorial erfahren Sie, wie Sie mithilfe der Multi-Threaded-Dynamic-Visuals-Technik Erkenntnisse aus dynamischen Datenvisualisierungen in Ihren Berichten gewinnen.

Einführung in den Filterkontext in LuckyTemplates

Einführung in den Filterkontext in LuckyTemplates

In diesem Artikel werde ich den Filterkontext durchgehen. Der Filterkontext ist eines der Hauptthemen, über die sich jeder LuckyTemplates-Benutzer zunächst informieren sollte.

Beste Tipps zur Verwendung der Apps im LuckyTemplates-Onlinedienst

Beste Tipps zur Verwendung der Apps im LuckyTemplates-Onlinedienst

Ich möchte zeigen, wie der LuckyTemplates Apps-Onlinedienst bei der Verwaltung verschiedener Berichte und Erkenntnisse aus verschiedenen Quellen helfen kann.

Analysieren Sie Gewinnmargenänderungen im Laufe der Zeit – Analysen mit LuckyTemplates und DAX

Analysieren Sie Gewinnmargenänderungen im Laufe der Zeit – Analysen mit LuckyTemplates und DAX

Erfahren Sie, wie Sie Ihre Gewinnmargenänderungen mithilfe von Techniken wie Kennzahlenverzweigung und der Kombination von DAX-Formeln in LuckyTemplates ermitteln.

Materialisierungsideen für Datencaches in DAX Studio

Materialisierungsideen für Datencaches in DAX Studio

In diesem Tutorial werden die Ideen der Materialisierung von Datencaches und deren Auswirkungen auf die Leistung von DAXs bei der Bereitstellung von Ergebnissen erläutert.

Geschäftsberichte mit LuckyTemplates

Geschäftsberichte mit LuckyTemplates

Wenn Sie bisher noch Excel verwenden, ist dies der beste Zeitpunkt, LuckyTemplates für Ihre Geschäftsberichtsanforderungen zu verwenden.

Was ist LuckyTemplates Gateway? Alles was du wissen musst

Was ist LuckyTemplates Gateway? Alles was du wissen musst

Was ist LuckyTemplates Gateway? Alles was du wissen musst