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 einen M-Code für eine Datumstabelle in eine Tabellenabfrage umwandeln. Sie können sich das vollständige Video dieses Tutorials unten in diesem Blog ansehen.
Ich würde den Schwierigkeitsgrad dieses Tutorials als mittelschwer einstufen, denn wenn Sie Erfahrung mit M-Codes haben, wäre es für Sie leicht, mitzumachen. Wenn Sie keine entsprechende Erfahrung haben, empfehle ich Ihnen, sich zunächst mit M-Codes zu befassen, um das Verständnis der hier vorgestellten Konzepte zu erleichtern.
Inhaltsverzeichnis
Aufgerufene Funktionsabfrage und Datumstabellenabfrage
Dies ist die Datumstabellenabfrage und die aufgerufene Funktionsabfrage.
Wenn Sie sich den Bereich „Angewandte Schritte“ auf der rechten Seite ansehen, gibt es nur einen Schritt. Es zeigt die Quelle für diese Abfrage.
Wenn Sie also den M-Code für diese Datumstabelle entwickeln möchten, müssen Sie zwischen der Funktion und der Tabellenabfrage wechseln, um alle vorgenommenen Änderungen zu sehen.
Das bedeutet, dass es komplizierter ist, mit Fehlern umzugehen, die durch Ihre Änderungen verursacht wurden. Dies führt zu einem Fehler in der Tabellenabfrage selbst. Anschließend müssen Sie Codezeilen durchsuchen, um den Fehler zu beheben.
Die nächste Seite zeigt die Datumsabfrage, die eine Tabelle anstelle einer Funktion zurückgibt.
Wenn Sie sich die angewandten Schritte auf der rechten Seite ansehen, werden Sie feststellen, dass dieses Mal mehrere Schritte aufgeführt sind.
Das bedeutet, dass Sie beim Entwickeln Ihres Datumstabellen-M-Codes sofort die Ergebnisse Ihrer Änderungen in dieser Tabellenabfrage sehen.
Noch wichtiger: Wenn Ihre Änderung zu einem Fehler führt, können Sie den Schritt, der den Fehler verursacht hat, leicht identifizieren. Dies erleichtert die Lösung des Problems.
Anwenden des M-Codes
Den Datumstabellen-M-Code finden Sie im LuckyTemplates-Forum. Es befindet sich unter dem Thema „Extended Data Table Power Query M Function“ im M Code Showcase.
Der M-Code steht ganz oben. Ich werde den gesamten Code markieren und ihn kopieren.
Dann erstelle ich eine neue leere Abfrage.
Ich öffne meinen erweiterten Editor und füge diesen Code ein.
Da ich sehe, dass keine Fehler erkannt wurden, klicke ich auf Fertig.
Lassen Sie mich das umbenennen und es „Dates“ nennen.
Diese Abfrage gibt eine Funktion zurück, aber ich möchte eine Tabelle.
Um die notwendigen Änderungen vorzunehmen, gehe ich zurück zum erweiterten Editor.
Konvertieren der Funktion in eine Tabelle
Damit dies eine Tabelle anstelle einer Funktion zurückgibt, müsste ich einige Änderungen am M-Code im erweiterten Editor vornehmen.
Wenn ich mir den M-Code ansehe, kann ich basierend auf der Anzahl der let-Anweisungen leicht mindestens zwei Umgebungen erkennen.
Jede let-Anweisung hat ihre eigene in-Klausel, die unten zu finden ist.
Sie könnten denken, dass es einfacher wäre, einfach diese letzte Klausel zu löschen, um daraus eine Tabelle zu machen.
Aber das werde ich nicht tun. Stattdessen werde ich das auskommentieren, indem ich vor der letzten In-Klausel zwei Schrägstriche hinzufüge.
Das werde ich auch für die erste let-Anweisung tun. Dadurch wird es inaktiv.
Unterhalb der inneren let-Anweisung erstelle ich einen Abschnitt zum Deklarieren meiner Parameter, da ich diese Parameter noch an diesen Code übergeben muss.
Ich werde markieren, wo diese Variablen deklariert werden sollen.
Jetzt kopiere ich die erste Variable aus der äußeren let-Anweisung und füge sie in das Leerzeichen ein.
In meinem Datensatz reichen die historischen Daten nicht weiter zurück als 2017. Um den Wert an die StartDate-Variable zu übergeben, kann ich also das intrinsische Datum verwenden. Ich gebe den 1. Januar ein und beende die Zeile mit einem Komma.
Anschließend kopiere und füge ich die nächste Variable ein, nämlich das EndDate.
Ich weiß, dass für das Enddatum eine Prognose erforderlich wäre. Deshalb möchte ich, dass dieses Enddatum immer das Ende des nächsten Jahres ist.
Ich habe in meinem M-Code bereits eine Variable für CurrentDate, daher werde ich darauf verweisen.
Auch hier verwende ich das intrinsische Datum. Ich extrahiere Date.Year und verwende CurrentDate als Jahreswert +1. Ich möchte auch, dass das Datum der 31. Dezember ist.
Auch hier beende ich diese Zeile mit einem Komma.
Die nächste Variable ist ein optionaler Parameter namens FYStartMonth.
Also kopiere ich einfach diesen Namen und füge ihn ein.
Beachten Sie, dass unter FYStartMonth unter der Variablen, die ich gerade eingefügt habe, eine rote Unterstreichung angezeigt wurde.
Das liegt daran, dass ihre Namen übereinstimmen. Es war kein Problem, wenn sie sich in getrennten Umgebungen befanden. Variablennamen innerhalb einer einzelnen Umgebung müssen jedoch eindeutig sein. Das bedeutet, dass ich den Namen der neuen Variablen ändern muss, die ich gerade eingefügt habe.
Anstatt es FYStartMonth zu nennen, werde ich es FYStartMonthNum nennen.
Ich werde dieser Variablen keinen Wert zuweisen, also setze ich einfach Null.
Da ich den Namen der Variablen geändert habe, muss ich auch den Namen überall dort ändern, wo auf diesen Parameter verwiesen wurde.
Zurück zur Variablen: Ich schließe diese Zeile, indem ich am Ende ein Komma hinzufüge.
Der nächste Parameter ist die optionale Feiertagsliste. Ich werde das ebenfalls kopieren und einfügen und es auch als null deklarieren.
Das Gleiche gilt für die WDStartNum. Ich kopiere es, füge es ein und deklariere es dann als null.
Um zu markieren, wo der Datumstabellencode beginnt, werde ich hier einen weiteren Kommentar hinzufügen.
Sobald ich auf „Fertig“ klicke, sehen Sie, dass die Abfrage jetzt den richtigen Typ zurückgibt.
Ich habe jetzt eine Tabelle statt einer Funktion.
Im Bereich „Angewandte Schritte“ kann ich auch alle Schritte sehen, aus denen die Abfrage besteht.
Wenn ich Änderungen an der Datumstabelle vornehmen möchte, kann ich ganz einfach das Menüband verwenden, um Schritte zu ändern oder hinzuzufügen. Für jede Änderung, die ich vornehme, sehe ich auch sofort die Ergebnisse in der Abfrage.
Die Tabellenabfrage wieder in eine Funktion umwandeln
Nehmen wir an, ich möchte die Datumstabellenabfrage wieder in eine Funktion umwandeln. Es geht lediglich darum, ein paar Dinge im M-Code zu optimieren, um die zuvor vorgenommenen Änderungen rückgängig zu machen.
Ich gehe zurück in den erweiterten Editor und entferne die Schrägstriche vor der äußeren let-Anweisung.
Als Nächstes entferne ich die Schrägstriche vor den In-Anweisungen.
Dann werde ich den zuvor hinzugefügten Variablenblock auskommentieren. Deshalb füge ich hier einen Schrägstrich und ein Sternchen hinzu.
Dann ein Sternchen und ein Schrägstrich nach dem Variablenblock.
Erinnern Sie sich, als ich diese Codezeile früher wegen der FYStartMonthNum geändert habe?
Ich werde diese Codezeile kopieren. Dann füge ich eine neue Zeile hinzu und füge sie ein.
Den ersten streiche ich heraus (dort habe ich vorhin die Änderungen am Variablennamen vorgenommen).
Auf der zweiten Seite finde ich dann die bearbeiteten Variablennamen.
Und ich werde sie wieder in FYStartMonth umwandeln.
Sobald ich auf „Fertig“ drücke, wird die Tabellenabfrage wieder in eine Funktion umgewandelt.
Erstellen einer dynamischen Datumsabfragetabelle in LuckyTemplates: Ein Tutorial zum Abfrageeditor.
Erstellen einer Datumstabelle in LuckyTemplates.
Einrichten eines dynamischen Startdatums und Enddatums für Power Query-Datumstabellen
Abschluss
Ich habe Ihnen wieder einmal gezeigt, wie praktisch M-Codes sind, insbesondere in Fällen wie diesen, in denen wir eine Funktion in eine Tabellenabfrage umgewandelt haben und umgekehrt. Solange Sie Zugriff auf den M-Code haben, den wir im LuckyTemplates-Forum haben, können Sie ihn in Zukunft in solchen Szenarien verwenden.
Sie können auch andere M-Codes durchsuchen, die Sie in anderen Situationen im M-Code-Showcase im verwenden können . Da es sich um eine kollaborative Community handelt, können Sie in den Kommentaren nach weiteren Ideen unserer Experten und Mitglieder suchen.
Alles Gute,
Melissa
***** 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