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.
Ich zeige Ihnen, wie Sie benutzerdefinierte Tiebreaker erstellen, wenn Sie RANKX in LuckyTemplates verwenden .
Ein Unentschieden in einem kritischen Teil der Ergebnisse ist ein häufiges Szenario. Es gibt eine Reihe von Tiebreakern, die Sie verwenden können, aber es ist wichtig, denjenigen auszuwählen, der für die jeweilige Situation am sinnvollsten ist. Sie können sich das vollständige Video dieses Tutorials unten in diesem Blog ansehen.
Inhaltsverzeichnis
Die Rolle von RANKX in LuckyTemplates
Ich habe die Angewohnheit, DAX-Funktionen mit Jobs im wirklichen Leben zu vergleichen. Dies hilft mir, jede Funktion mit ihrer Funktion in LuckyTemplates zu verknüpfen.
RANKX bewertet und ordnet Elemente nach bestimmten Kriterien. In der realen Welt kann man es mit einem Richter auf einer Hundeausstellung vergleichen, der die Teilnehmer auffordert, sich entsprechend aufzustellen.
In dem Szenario, das ich heute verwende, werde ich RANKX als Juror für einen hypothetischen Verkaufswettbewerb einsetzen. Bei den Daten handelt es sich um Zahlen eines Vertriebsteams und der Preis geht an die Person mit dem höchsten Gesamtumsatz im Monat .
Um die Sache interessant zu halten, nehmen wir an, dass der 1. Preis ein Cadillac El Dorado und der 2. Preis ein Satz Steakmesser ist. Das ist eine riesige Wertlücke, was bedeutet, dass es nur einen Gewinner geben kann.
Wenn ich auf meine Tabelle schaue, habe ich eine Liste aller Verkäufer im Verkaufsteam.
Ich füge die Daten für den Gesamtumsatz jeder Person hinzu .
Dies ist das RANKX -Maß, das ich auf diese Tabelle anwende.
Es handelt sich lediglich um eine grundlegende RANKX- Konfiguration, die verwendet , sodass ich beim Sortieren der Ränge nicht die Gesamtsumme mit einbeziehe .
aller Verkäufer basiert auf dem Gesamtumsatz . Diese sind in der Reihenfolge DESC angeordnet. Hier verwende ich Überspringen für den Fall, dass es einen Gleichstand gibt.
Einige verwenden möglicherweise Dense anstelle von Skip , aber in diesem Fall hilft beides nicht wirklich.
Überspringen versus dicht
Um zu demonstrieren, wie sich „Überspringen“ auf die Kennzahl auswirkt, ziehe ich die Ränge per Drag-and-Drop in die Tabelle.
Dann sortiere ich die Daten nach Rank .
Die Tabelle zeigt ein Unentschieden um den ersten Platz. Aber es war kein toller Monat für das Vertriebsteam, daher kann sich der Manager nicht leisten, zwei Cadillac El Dorados zu verschenken. Das bedeutet, dass ich mir einen Tiebreaker ausdenken muss, um zu entscheiden, wer das Auto und wer die Steakmesser bekommt.
Jasper und Max liegen an der Spitze und liegen gleichauf auf Platz 1. Da ich „Überspringen“ verwendet habe, werden Sie sehen, dass der Rang nach den beiden Einsen an der Spitze auf 3 springt . Das funktioniert bei mir nicht, da ich immer noch zwei Gewinner habe.
Was passiert, wenn ich Dense anstelle von Skip verwende ?
Wenn ich Dense verwende , wird die Bindung selbst nicht beeinträchtigt. Doch statt der Nummer 3 wird nach dem Unentschieden die Nummer 2 angezeigt .
Offensichtlich funktioniert Dense auch in diesem Fall nicht. Das bedeutet, dass ich einen benutzerdefinierten Tiebreaker anwenden müsste.
Auswahl eines benutzerdefinierten Tiebreakers
Ein guter maßgeschneiderter Tiebreaker zeichnet sich durch zwei Hauptmerkmale aus.
Erstens muss es die verknüpften Elemente sinnvoll differenzieren. Es muss ein Faktor sein, der die zwei oder mehr verbundenen Elemente trennt.
Zweitens sollte es den Rang oder die Reihenfolge der nicht verknüpften Elemente nicht ändern.
Wenn man über diese beiden Aspekte nachdenkt, fällt es leicht, eine Reihe von Entscheidungskriterien zu finden.
Der Gesamtumsatz ist unser primärer Rankingfaktor.
Ich muss also über andere Faktoren nachdenken, die genutzt werden könnten, um den durch die ähnlichen Daten in den beiden oberen Zeilen verursachten Gleichstand zu lösen.
Die Anzahl der Verkäufe könnte eins sein. Wer hat am meisten Hektik? Wer hat die meisten Kunden gewonnen?
Es ist auch möglich, den maximalen Verkauf anzuzeigen, indem man prüft, wer die meisten Konten gewonnen hat.
Ich könnte mir auch die durchschnittlichen Verkäufe ansehen.
In diesem Fall habe ich mich für den Median-Umsatz entschieden . Es wird nicht so stark von Ausreißern beeinflusst, die entweder am oberen oder unteren Ende kommen. Dies bedeutet, dass es ein besseres Maß für die zentrale Tendenz liefern kann.
Erstellen eines benutzerdefinierten Tiebreakers
Bei der Entwicklung des Tiebreakers steckt ziemlich viel DAX, aber das Konzept ist einfach.
Ich habe Ranking2 als Variable. Ich habe auch HASONEVALUE aus demselben Grund verwendet, aus dem ich es zuvor im primären RANKX- Muster verwendet habe. Der einzige Unterschied besteht darin, dass ich dieses Mal Median Sales anstelle von Total Sales verwende .
Als nächstes nehme ich das Ergebnis dieser Variablen und teile es durch 100.
Da mein Gesamtumsatz ganze Zahlen enthält, kann ich mit der ersten und zweiten Dezimalstelle spielen, um den Gleichstand aufzulösen. Wenn man das durch Hundert dividiert, erhält man die Zahlen jenseits des Dezimalpunkts, so dass die gleichstehenden Zahlen oben differenziert werden, ohne dass sich dies auf die restlichen Ergebnisse auswirkt.
Dies führt dazu, dass die obersten Ränge 0,01, 0,02 usw. anzeigen. Ich werde das also umdrehen, sodass der Erstplatzierte die höchste Punktzahl im Tiebreaker erhält.
Innerhalb von HASONEVALUE subtrahiere ich also den RankScale von 1 .
Wenn ich das auf die Tabelle anwende, werden Sie sehen, dass ich jetzt zwei Dezimalstellen unter meinem RANKX-Tiebreaker habe .
Ich werde auch meine Durchschnittsverkäufe in die Tabelle ziehen, um Ihnen die Auswirkungen unseres Tiebreakers deutlicher zu zeigen.
Wenn man sich diese Zahlen ansieht, zeigt sich tatsächlich, dass weder Max noch Jasper die höchsten Punktzahlen erzielt haben. Es war tatsächlich Martin Perry.
Denken Sie jedoch daran, dass es sich hierbei nur um einen Tiebreaker handelt und der Gesamtumsatz nach wie vor der primäre Ranking-Faktor bleibt . Das bedeutet, dass ich nur die Zahlen für die gebundenen Zeilen vergleichen sollte .
Deshalb addiere ich einfach meinen Gesamtumsatz und den RANKX-Tiebreaker, um die Zahlen für die Spalte „Total Sales Tiebreak“ zu erhalten .
Ich führe RANKX für den neuen Gesamtumsatz mit angewendetem Tiebreaker aus und sortiere die Daten.
Jetzt wird ein vollständiger Durchlauf von 1 bis n ohne gebundene Elemente angezeigt.
Verwenden der RAND-Funktion zum Auflösen von Unentschieden
Es kann Fälle geben, in denen eine zufällig generierte Zahl als Tiebreaker dienen kann.
Ein Beispiel wäre, wenn Sie eine Fokusgruppe wünschen, die eine zufällige Auswahl der 20 besten Verkäufer umfasst. Bei Gleichstand innerhalb der Gruppe ist es sinnvoll, einfach eine Zufallszahl als Tiebreaker zu verwenden.
Das Problem bei Power Query und DAX im Allgemeinen besteht jedoch darin, dass sich Zufallsfunktionen unterschiedlich verhalten . Sie erhalten nicht die erwarteten Ergebnisse, insbesondere wenn Sie innerhalb einer iterierenden Funktion verwenden.
RAND gibt eine Zufallszahl zwischen 0 und 1 zurück . Wenn Sie also entscheiden, dass das Szenario, an dem Sie arbeiten, eine zufällig generierte Zahl benötigt, um den Gleichstand zu lösen, sollte dies idealerweise in diesem Teil der Maßnahme geschehen.
Anstelle von nur „Total Sales“ sollte hier „Total Sales plus RAND“ angezeigt werden . Aber auch in diesem speziellen Szenario wird es mir nicht das endgültige Ranking-Ergebnis liefern, das ich brauche.
RANKX-Überlegungen – LuckyTemplates- und DAX-Formelkonzepte
Ein tieferes Verständnis von Advanced RANKX
Erstellen dynamischer Ranglistentabellen mit RANKX in LuckyTemplates
Abschluss
Wie Sie in diesem Beispiel gesehen haben, ist es ziemlich einfach, einen Gleichstand zu lösen, wenn Sie RANKX in LuckyTemplates verwenden . Der Trick besteht darin, herauszufinden, welcher benutzerdefinierte Tiebreaker die logischsten Ergebnisse liefert.
Ich werde in Zukunft weitere Tutorials zu anderen Tiebreakern machen, insbesondere zur Verwendung von RAND in einem Sampling-Szenario. Ich glaube, dass es einen tieferen Blick wert ist.
In der Zwischenzeit hoffe ich, dass dieser Ansatz für Sie funktioniert, wenn Sie derzeit an einem ähnlichen Szenario arbeiten oder in Zukunft auf so etwas stoßen.
Alles Gute
***** LuckyTemplates lernen? *****
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
In diesem Tutorial zur DAX-Codierungssprache erfahren Sie, wie Sie die GENERATE-Funktion verwenden und einen Kennzahltitel dynamisch ändern.
In diesem Tutorial erfahren Sie, wie Sie mithilfe der Multi-Threaded-Dynamic-Visuals-Technik Erkenntnisse aus dynamischen Datenvisualisierungen in Ihren Berichten gewinnen.
In diesem Artikel werde ich den Filterkontext durchgehen. Der Filterkontext ist eines der Hauptthemen, über die sich jeder LuckyTemplates-Benutzer zunächst informieren sollte.
Ich möchte zeigen, wie der LuckyTemplates Apps-Onlinedienst bei der Verwaltung verschiedener Berichte und Erkenntnisse aus verschiedenen Quellen helfen kann.
Erfahren Sie, wie Sie Ihre Gewinnmargenänderungen mithilfe von Techniken wie Kennzahlenverzweigung und der Kombination von DAX-Formeln in LuckyTemplates ermitteln.
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.
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