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.
In diesem Tutorial zeige ich Ihnen eine detaillierte DAX-Kennzahlanalyse, wie ich eine meiner Lieblingsseiten in dem Bericht zusammengestellt habe, den ich für die 10. LuckyTemplates Challenge eingereicht habe.
Die Rankings-Seite verwendet viele anspruchsvolle DAX-Kennzahlen. Aber mit der Hilfe eines unserer LuckyTemplates-Experten, Antriksh Sharma, und einigen Maßverzweigungen konnte ich die gewünschten Ergebnisse erzielen.
Inhaltsverzeichnis
Übersicht über die Ranking-Seite
Bevor wir uns mit unserer DAX-Kennzahlenanalyse befassen, möchte ich Ihnen die verschiedenen Teile der Seite zeigen, an denen wir heute arbeiten.
So sieht die Seite „Rankings“ aus. Im Gegensatz zu den anderen Seiten meines Berichts enthält diese hauptsächlich Karten.
Jede dieser Karten wurde mit dem integrierten Kartenvisual im LuckyTemplates-Desktop im Bereich „Visualisierungen“ erstellt.
Über diese Symbole hier oben können Sie zu anderen Seiten im Bericht zurücknavigieren.
Die anderen Seiten dieses Berichts habe ich in den anderen Tutorials besprochen. Wenn Sie sich die anderen Seiten in diesem Bericht ansehen, werden Sie feststellen, dass dort ebenfalls Symbole vorhanden sind, die zu dieser Rankings-Seite führen .
Auf der linken Seite der Seite werden die insgesamt vier besten Werke und Anbieter angezeigt, während auf der rechten Seite die letzten vier angezeigt werden.
Ich habe auch einzelne DAX-Kennzahlen erstellt, um spezifischere Ergebnisse zu erhalten. Diese drei oben zeigen beispielsweise die ersten vier und die letzten vier Werke und Anbieter basierend auf Ausfallzeitminuten , durchschnittlichen Ausfallzeitminuten und Fehlern .
Im unteren Teil der Berichtsseite bin ich noch genauer darauf eingegangen. Auf der linken Seite habe ich die oberen vier und unteren vier Anlagen basierend auf Ausfallzeitminuten, durchschnittlichen Ausfallzeitminuten und Defekten erhalten.
Auf der rechten Seite habe ich das Gleiche gemacht, diesmal jedoch anhand der Anbieterangaben.
Während ich dieses Tutorial durchgehe, erzähle ich Ihnen die Geschichte, wie ich auf die Idee für diese Seite gekommen bin. Anschließend erkläre ich Ihnen Schritt für Schritt, wie jede dieser Maßnahmen erstellt wurde.
Ideen für die Nutzung der DAX-Kennzahlen erhalten
Die Idee für die DAX-Kennzahlen in dieser Folie habe ich von einem unserer , Antriksh. Er ist ein DAX-Guru und versteht es hervorragend, Maßnahmen zu optimieren. Es hat Spaß gemacht, mit ihm an dieser DAX-Kennzahlenanalyse zu arbeiten.
Etwa zwei Wochen vor der Ankündigung der 10. LuckyTemplates Challenge führten wir über Skype ein Gespräch über eine PBIX-Datei, die er im LuckyTemplates-Forum gepostet hatte.
Wie Sie sehen können, habe ich ein Bild von Antriksh beigefügt, weil er die Inspiration für die Seite war, die wir hier besprechen werden. Ich sagte ihm, dass ich ihm Anerkennung zollen würde, wenn ich dieses Tutorial abgeschlossen hätte.
Das Modell ist einfach und verwendet einige grundlegende Daten wie Kunde, Produkte und Verkäufe.
Auf der linken Seite finden Sie eine kurze Liste der Länder.
Antriksh hat eine Kennzahl für die Top-N-Länder nach Umsatz erstellt . Ich habe die Liste von oben nach unten sortiert, wie durch den Abwärtspfeil angezeigt.
Auf der rechten Seite ist eine Karte zu sehen, die die besten vier und die letzten vier Länder zeigt. Die Top-Vier-Liste zeigt die Vereinigten Staaten , Australien , das Vereinigte Königreich und Deutschland , die zu den Top Vier der Liste passen.
Die unteren vier erscheinen jedoch in umgekehrter Reihenfolge. Anstatt von ganz unten, also Armenien , auszugehen , begann man am fünften Platz der Liste, also Kirgisistan .
Aus diesem Grund habe ich unten eine weitere Karte erstellt, die eine überarbeitete Version des oben verwendeten Maßes verwendet.
Beachten Sie, dass die unteren vier nun der von mir gewünschten Reihenfolge entsprechen – Armenien , Thailand , Syrien und Kirgisistan .
Gehen wir auf die DAX-Kennzahlen hinter diesen Karten ein. Ich beginne mit der Maßnahme, die Antriksh für die erste Karte erstellt hat.
Die ursprüngliche Messung umfasste über 97 Zeilen, um die Ergebnisse zu erhalten, die wir auf der ersten Karte gesehen haben.
Wenn wir bis zur 20. Zeile scrollen, können wir sehen, dass Antriksh ASC verwendet hat . Das ist der Grund, warum die letzten vier so abgeschnitten haben.
Nachdem ich nun weiß, wo das Problem seinen Ursprung hat, zeige ich Ihnen, wie mein überarbeitetes Maß aussieht.
Lassen Sie mich die zweite Karte hervorheben, damit ich Ihnen die Maßnahme dahinter zeigen kann.
Wie Sie sehen, enthält meine überarbeitete Formel nur 41 Zeilen.
Ich habe mit Antriksh zusammengearbeitet, um es um 60 % oder 70 % gegenüber dem ursprünglichen Maß zu verkleinern. Es ist nicht nur weniger kompliziert, sondern liefert mir auch die Ergebnisse, die ich brauche – wobei die ersten vier vom 1. bis zum 4. beginnen und die unteren vier vom 8. bis zum 5. beginnen.
Ein paar Wochen nach meinem Gespräch mit Antriksh wurde die 10. LuckyTemplates Challenge gestartet. Zu den Anforderungen gehörte auch ein Ranking-System, das mich an den DAX-Maßstab von Antriksh zurückdenken ließ. Mir wurde klar, dass ich die Kennzahl kopieren und einfügen und dann eine Kennzahlverzweigung anwenden kann, um die benötigten Ergebnisse zu erhalten.
Dax-Kennzahlenanalyse: Schritt für Schritt die Kennzahl aufbauen
Jetzt werde ich die Maßnahmen aufschlüsseln, die ich für die Seite „Rankings“ verwendet habe , um die gewünschten Ergebnisse zu erzielen. Mithilfe dieser DAX-Kennzahlanalyse kann ich erklären, wie die Kennzahl funktioniert, wenn man bedenkt, wie viele Zeilen für ihre Vervollständigung erforderlich waren.
In meinen anderen Tutorials habe ich gezeigt, wie gerne ich meine Maßnahmen gruppiere, um die Dinge besser zu organisieren . Also habe ich einen Unterordner für Top N v2 erstellt.
In diesem Ordner befindet sich mein Maß für die Ausfallzeitminuten der Top N Plants-Anbieter . Sie werden sehen, dass es dieselben 41 Codezeilen enthält, die ich Ihnen zuvor gezeigt habe, als ich Antrikshs Maßnahme besprochen habe. Im Grunde musste ich nur einige Elemente ersetzen, um die gewünschten Ergebnisse zu erzielen.
Um dies besser aufzuschlüsseln, habe ich die gesamte Maßnahme in 9 verschiedene Teile aufgeteilt. Ich werde jeden dieser Schritte von eins bis neun durchgehen und erklären, was jeder von ihnen bewirkt.
Die Messung verwendet eine Reihe von Variablen, damit ich klarere Ergebnisse erhalten kann. Das Festlegen dieser Variablen hilft dem Endbenutzer zu sehen, wie die Messung zusammenhängt, und erklärt die Details, wie ich zu den einzelnen Ergebnissen gelangt bin.
Beginnen wir mit dem ersten Schritt, der die namens BaseTable festlegt.
In dieser Basistabelle können Sie sehen, dass ich Daten für Plant Location und Vendor verweise .
Wenn Sie zur PBIX-Datei zurückkehren, sehen Sie die oberste Karte, die sowohl auf die Werke als auch auf die Lieferanten verweist. Deshalb benötige ich hier alle Daten, im Gegensatz zur Karte weiter unten, die ebenfalls für Ausfallminuten dient, aber nur Anlagenstandortdaten verwendet.
Da der erste Schritt unkompliziert ist, fahren wir mit Schritt zwei fort.
Der zweite Schritt beginnt mit der Funktion .
Diese Funktion verweist auf die Variable , die ich in Schritt 1 erstellt habe, und auf die Ausfallzeitminuten .
Durch die Kombination der Funktionen und wird sichergestellt, dass ein Wert angezeigt wird . Ich möchte auch, dass die Ergebnisse größer oder gleich Null sind. Das liegt daran, dass der für diesen Bericht verwendete Datensatz einige Kombinationen enthielt, bei denen entweder das Werk oder der Lieferant leer ist. Es gibt auch Einträge, bei denen der Wert Null ist.
Der dritte Schritt umfasst einen weiteren Satz Variablen, beginnend mit dem Wert für N.
Hier ist N gleich 4, weil ich möchte, dass die oberen vier und die unteren vier angezeigt werden.
Außerdem wird ein Präfix für „Oben“ und „N“ sowie ein Bindestrich festgelegt.
Beim Zusammensetzen soll lediglich „Top 4 -“ angezeigt werden, so beginnt die entsprechende Karte, bevor die erwarteten Ergebnisse aufgezählt werden.
Kommen wir nun zum vierten Schritt. Hier fange ich an, die erwarteten Ergebnisse zu erzielen.
nachdenken . Schließlich versuche ich, die Einträge zu bewerten und die besten Ergebnisse zu erzielen. Antriksh und ich waren jedoch der Meinung, dass in diesem Fall besser geeignet wäre, da wir nur die ersten vier in der ASC- Reihenfolge benötigen.
Als nächstes habe ich die Funktion verwendet, die die Standortdaten der Anlage verwendet.
Es legt auch das Format fest, in dem die Liste angezeigt werden soll. Deshalb sehen Sie, dass es einen Backslash und ein Komma sowie Anführungszeichen zur Kennzeichnung von Leerzeichen enthält. Es ist auch auf ASC- Reihenfolge eingestellt. Wenn ich also zur PBIX-Datei zurückgehe, sehen Sie die Liste der ersten vier mit Backslashes und Kommas zwischen den Ergebnissen.
The fifth step of the measure starts by replacing the last comma on the list with an And.
When you go back to the slide, you’ll see that the last entry does have an “and” before the vendor and plant location.
This is what’s being accomplished in step five. It’s creating a list and using the function for the LastCommaPosition.
Notice that this says that N is greater than 2. This means that the substitution happens after the 3rd string.
The sixth step will look familiar because it basically copies the same thing I did on top to start the list with “Top 4 -“.
The only difference here is that I want it to show up as “Bottom 4 -” instead of “Top 4 -“.
The part I previously discussed about using is once again used here at the bottom, but now I’m calling the variable BottomData instead of TopData. Again, this part inserts the backslash and comma in between the names of the plants and vendors.
When we look back at Antriksh’s original measure, this is also the same part where he used ASC, which resulted in the list coming out not as I expected. That’s why I’m using DESC here instead.
So basically, at this point onwards, most of it is just copied and pasted from the earlier parts of the measure. I’m just replacing the word “Top” with “Bottom” in most cases.
For step 8, I want to change the last comma with the word And.
The ninth step wraps up this measure.
This uses the function with the number 10. This ensures that the Top 4 and the Bottom 4 are showing up on separate lines. Think about it as the return key on your keyboard. It makes you go down to the next row so that the top and bottom four don’t show up on a single line.
Verifying The Results
Antriksh and I were able to trim down the original 90 plus rows of DAX into 41 lines. However, 41 lines might still be a lot for some users. Breaking down that measure the way we did was a great way to understand why the measure had to be written that way.
Nachdem ich nun erklärt habe, worum es bei den einzelnen Schritten geht, ist es an der Zeit zu überprüfen, ob diese Maßnahme wirklich das tut, was sie bewirken soll. Gehen wir zur Seite „Rankings“ und überprüfen wir die Ergebnisse mit dem anderen Teil des Berichts.
Ich beginne mit den Plants/Vendors By Downtime Minutes .
Dies zeigt die Top 4 als Linktype in New Britain, Flashpoint in Frazer, Quinu in Twin Rocks und Layo in Henning. Was die letzten vier betrifft, so ist Wikido in Middletown insgesamt am schlechtesten.
Jetzt gehe ich zur Seite „ Vendors and Plants Combined“, um zu sehen, ob die Ergebnisse übereinstimmen.
Wenn die Spalte „Rangfolge nach Ausfallzeitminuten“ von oben nach unten sortiert ist, wird das korrekte Ergebnis für die ersten vier angezeigt.
Einige von Ihnen fragen sich jedoch vielleicht, warum New Britain auf dieser Liste an zweiter Stelle steht, wenn es doch ganz oben auf der Ranglistenkarte steht .
Beachten Sie, dass in der Rangliste drei Einträge als Top 1 angezeigt werden. Diese wurden mithilfe von RANKX eingestuft.
Wenn Sie sich jedoch die Spalte „Downtime Minutes“ ansehen , sehen Sie, dass New Britain 0 anzeigt, während Frazer und Twin Rocks jeweils 1 anzeigen. Aus diesem Grund lag New Britain auf der Karte in der Rangliste immer noch an der Spitze von Frazer und Twin Rocks auch wenn sie alle auf Platz eins rangierten.
Überprüfen wir nun, ob die unteren vier korrekt sind. Sortieren Sie einfach die Rangfolge nach Ausfallzeitminuten in absteigender Reihenfolge.
Wie Sie sehen können, werden Middletown, Waldoboro, Barling und Chesaning als die letzten vier auf der Karte angezeigt. Dies bedeutet, dass die Kennzahl „Werke/Lieferanten nach Ausfallzeitminuten“ korrekt ist.
Schauen wir uns nun die Karte für Plants By Downtime Minutes an .
Dies zeigt, dass die ersten vier Reading, Middletown, Waldoboro und Clarksville sind. Die unteren vier sind Riverside, Charles City, Twin Rocks und Chesaning.
Um diese Ergebnisse zu überprüfen, schaue ich auf der Seite „Pflanzen“ nach, ob die Ergebnisse übereinstimmen. Der größte Unterschied besteht darin, dass die Karte, die wir zuvor überprüft haben, sowohl auf den Pflanzen- als auch auf den Lieferantendaten basierte, während diese Karte nur Pflanzendaten berücksichtigt.
Wenn wir die Rangfolge nach Ausfallzeitminuten von oben nach unten sortieren, zeigt sich, dass die ersten vier Reading, Middletown, Waldoboro und Clarksville sind.
Lassen Sie uns dieses Mal die Rangfolge umkehren, um zu sehen, ob die letzten vier übereinstimmen. Sie werden sehen, dass von den 30 Anlagen auf unserer Liste Riverside, Charles City, Twin Rocks und Chesaning die letzten Plätze belegen.
Das bedeutet, dass wir die richtigen Ergebnisse für Pflanzen sehen.
Schauen wir uns dieses Mal eine Karte an, die die Anbieter nach Mängeln einordnet .
Diesmal gehe ich auf die Seite „Anbieter“, um zu sehen, ob Dablist der Top-Anbieter und Yombu aufgrund der Mängel der schlechteste ist.
Wenn wir die Anbieter vom besten zum schlechtesten sortieren, sieht es so aus, als ob die ersten vier mit der Karte auf der Rangliste-Seite übereinstimmen .
Lassen Sie mich den Rang vom schlechtesten zum besten ändern und sehen, ob auch die letzten vier übereinstimmen.
Sie werden sehen, dass Yombu tatsächlich das Schlimmste ist, zusammen mit den anderen drei, die in der Liste der letzten vier auf der Karte aufgeführt sind.
Dax-Kennzahlenanalyse: Anwenden der Kennzahlverzweigung
Die DAX-Kennzahlenanalyse, die wir zuvor durchgeführt haben, betrachtete nur die Kennzahl hinter Plants/Vendors By Downtime Minutes . Aber wie habe ich an den Maßnahmen für die anderen Karten gearbeitet? Hier kommt die Maßverzweigung ins Spiel.
Bei der Kennzahlverzweigung wird eine vorhandene Kennzahl verwendet, um andere Ergebnisse abzuleiten.
In diesem Bericht habe ich einfach die Maßnahme, die wir zuvor besprochen haben, kopiert und eingefügt und einige Elemente so geändert, dass sie meinen Anforderungen entsprechen.
Der Name der Maßnahme ist natürlich das erste, was ich ändern werde. Aber darüber hinaus muss ich auch die Daten ändern, auf die ich verweise. Beispielsweise haben wir für unsere ursprüngliche Messung sowohl die Werksstandort- als auch die Lieferantendaten verwendet.
Aber wenn ich das gleiche Maß für Plants By Downtime Minutes verwenden würde , müsste ich die Vendor-Daten entfernen und mich nur auf den Plant Location konzentrieren.
Ich muss das für alle anderen Teile derselben Kennzahl ändern, die ebenfalls auf beide Datensätze verweist, wie bei der Verwendung von CONCATENATEX .
Das Gleiche gilt für die Ausfallzeitminuten . Wenn ich an einer Karte arbeiten würde, die sich mit den durchschnittlichen Ausfallzeiten oder Fehlern befasst , muss ich nur diesen Teil ändern.
Was den Teil betrifft, in dem in der Kennzahl „@DowntimeMins“ steht, würde es nicht schaden, dies auch dann beizubehalten, wenn ich mich auf meine Fehler oder meine durchschnittlichen Ausfallzeitminuten beziehe.
Aber wenn Sie der Typ sind, der die Dinge gerne in einer bestimmten Reihenfolge hält, können Sie auch diese ändern. Denken Sie daran: Wenn Sie dies ändern, müssen Sie es auf der gesamten Seite ändern. Das bedeutet, dass für die gleichen Ergebnisse ein gewisser zusätzlicher Aufwand erforderlich ist.
Sie können sich vorstellen, wie viel Zeit ich durch die Verwendung der Kennzahlverzweigung gespart habe . Auf diese Weise muss ich nicht für jeden Teil des Berichts, an dem ich arbeite, ständig neue Kennzahlen erstellen. Ich muss lediglich die vorhandene Kennzahl auf der Grundlage der Ergebnisse, die ich sehen möchte, optimieren und so die Entwicklungszeit für meinen Bericht erheblich verkürzen.
Um Ihnen zu zeigen, wie ich das gemacht habe, schauen wir uns Vendors By Downtime Minutes an .
Wenn ich die Kennzahl aufrufe, werden Sie sehen, dass sie dieselben 41 Zeilen wie Plants / Vendors By Downtime Minutes hat .
Allerdings habe ich in Schritt 1 nur auf Lieferantendaten verwiesen und den Werksstandort entfernt.
Ich habe die Daten auch an anderen Stellen geändert, an denen sie anwendbar sind.
Ich habe die Ausfallzeitminuten beibehalten , da die Ergebnisse darauf basieren.
Das sind also schnelle Lösungen für die Maßnahme, damit sie auf die anderen Bereiche des Berichts angewendet werden können.
Lassen Sie mich Ihnen hier ein weiteres Beispiel zeigen. Schauen wir uns dieses Mal Vendors By Defects an .
Auch hier schauen wir uns nur den Anbieter an.
Was ich hier geändert habe, ist der Verweis auf Downtime Minutes . Stattdessen habe ich Defects verwendet .
Ich habe außerdem sichergestellt, dass die anderen Zeilen weiterhin die Daten für „Vendor“ verwenden.
DAX-Kennzahlen in LuckyTemplates mithilfe von Kennzahlverzweigungen.
Implementieren von DAX-Kennzahlgruppen in Ihre Berichte – eine Überprüfung der LuckyTemplates-Modellierung,
die einzigartige Erkenntnisse in LuckyTemplates mithilfe von Ranking-DAX-Kennzahlen extrahiert
Abschluss
Das war eine starke DAX-Arbeit von Antriksh. Es hat mir auf jeden Fall Spaß gemacht , damit zu arbeiten , es zu verzweigen und auf die verschiedenen Teile meines Berichts anzuwenden .
Die von uns durchgeführte ausführliche DAX-Kennzahlenanalyse war auch eine großartige Möglichkeit, jeden Aspekt des Prozesses zu verstehen. Die Arbeit an einer langen Kennzahl mag zunächst entmutigend erscheinen, aber eine gründliche DAX-Kennzahlanalyse wie diese kann dabei helfen, die Dinge zu klären.
Die Arbeit an dieser Seite hat auch die Bedeutung einer kollaborativen Community wie hier bei LuckyTemplates hervorgehoben. Es ist großartig, dass jeder die Möglichkeit hat, mit Leuten wie Antriksh zusammenzuarbeiten, aber auch mit anderen Mitgliedern und Experten, die auch selbst ein paar Tipps und Tricks haben.
Alles Gute,
Jarrett
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