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 möchte die Best Practices vorstellen, die ich bei der Erstellung von LuckyTemplates-Berichten übernommen habe. In den letzten Jahren habe ich viele Online-Ressourcen zum Thema Datenladen und -transformation genutzt, die für meinen Weg von entscheidender Bedeutung waren, aber der Inhalt überwältigte mich schnell, sodass ich mir schließlich meine eigenen Notizen machte. Das vollständige Video dieses Tutorials können Sie unten in diesem Blog ansehen.
Dies ist keineswegs eine erschöpfende Liste und auch keine Best Practices – es sind nur einige davon, die ich in meine eigene Entwicklung integriert habe. Außerdem entwickeln sich die Best Practices im Laufe der Zeit immer weiter, wenn neue und erweiterte Funktionen in die LuckyTemplates-Anwendung eingeführt und von der LuckyTemplates-Community vorgestellt werden.
Ich möchte die erste der vier Säulen der LuckyTemplates-Entwicklung vorstellen. Die vier Säulen sind Datenladen und Datentransformation , Datenmodellierung , DAX-Berechnungen sowie Berichte und Visualisierungen . Mit dem Vorentwicklungs-Setup und der ersten Säule befassen wir uns in diesem Blogbeitrag.
Inhaltsverzeichnis
Deaktivieren des automatischen Datums/der automatischen Uhrzeit
Es wird dringend empfohlen, die automatische Datums- und Uhrzeitfunktion in zu deaktivieren . Sie können dies auf zwei Arten tun.
Mit den folgenden Schritten können Sie dies global für alle Dateien tun:
Sie können es auch für die aktuelle Datei deaktivieren, indem Sie die Einstellung ändern.
Deaktivieren der automatischen Erkennung von Beziehungen
Es wird außerdem dringend empfohlen, die automatische Erkennung von Beziehungen zu deaktivieren. Sie können zu Datei gehen und Optionen und Einstellungen anzeigen, um die automatische Erkennung neuer Beziehungen zu deaktivieren, nachdem die Daten geladen wurden.
Interaktion mit Visuals in LuckyTemplates-Berichten
Als nächstes möchte ich über die beiden Möglichkeiten sprechen, wie Sie mit Visuals in LuckyTemplates-Berichten interagieren können. Diese Interaktionen können entweder kreuzgefiltert oder kreuzhervorgehoben werden .
Die Kreuzhervorhebung ist in LuckyTemplates standardmäßig aktiviert. Sie können dies ändern, indem Sie auf „Datei“ und dann auf „Optionen und Einstellungen“ gehen. Für die aktuelle Datei können Sie im Abschnitt „Berichtseinstellungen“ die visuelle Interaktion von Kreuzhervorhebung zu Kreuzfilterung ändern.
Werfen wir einen Blick auf unseren Bericht. Sie können sehen, dass LuckyTemplates standardmäßig die Kreuzhervorhebung für verwandte Visuals verwendet. Wenn ich im linken Balkendiagramm auf einen Kanal klicke, sehen Sie, dass der ausgewählte Teil in dunkler Farbe hervorgehoben wird, während der nicht ausgewählte Teil im zweiten Balkendiagramm in heller Farbe bleibt.
Sie können sehen, dass sich die gesamte Form im Diagramm nicht ändert und Sie nur die hervorgehobenen Teile sehen. Sie können dies in den Berichtseinstellungen ändern und die standardmäßige visuelle Interaktion von Kreuzhervorhebung auf Kreuzfilterung ändern.
Sobald Sie dies getan haben, werden Sie feststellen, dass sich die Form Ihres zugehörigen Balkendiagramms jedes Mal ändert, wenn Sie eine Auswahl oder eine Gruppe von Auswahlen treffen. Dies ist eine gute Übung zum Einstieg.
Datensatz vom Bericht trennen
Das nächste, worüber ich sprechen möchte, ist die Trennung Ihrer Datensatzentwicklung von Ihrer Berichtsentwicklung. Hier können Sie eine dicke Datensatzdatei als eigenständigen Datensatz ohne visuelle Elemente veröffentlichen und eine dünne Berichtsdatei entwickeln, die diese veröffentlichten Datensätze verwendet.
Einer der Vorteile der separaten Veröffentlichung von Datensätzen besteht darin, dass Sie den Bestätigungsprozess im LuckyTemplates-Dienst verwenden können, um Datensätze zu bewerben und zu zertifizieren. Es empfiehlt sich, bei der Entwicklung eines neuen Berichts einen bestätigten Datensatz auszuwählen, vorzugsweise einen zertifizierten.
Erstellen einer dedizierten Datumstabelle
Stellen Sie sicher, dass Ihr Bericht eine eigene Datumstabelle enthält. verwenden , die im LuckyTemplates-Forum verfügbar ist. Sie können den M-Code kopieren und in eine leere Abfrage einfügen.
Sobald Sie eine eigene Datumstabelle haben, müssen Sie sie als Zweites markieren. Dadurch kann es von LuckyTemplates für Zeitintelligenzberechnungen verwendet werden.
Weitere Erinnerungen für die Termintabelle
Stellen Sie immer sicher, dass Ihre Datentabelle zusammenhängend ist und eine Zeile pro Tag vorhanden ist. Überprüfen Sie außerdem, ob es die Ränder Ihrer Faktentabelle vollständig abdeckt.
Fügen Sie außerdem ganze Jahre zur Datumstabelle hinzu. Es ist auch eine gute Idee, der Datumstabelle ein zusätzliches zukünftiges Jahr hinzuzufügen, um zukünftige oder prognostizierte Zeitintelligenzberechnungen zu ermöglichen.
Wenn Ihre Datumstabelle mehr Tage enthält, als Sie in Ihrem Bericht anzeigen möchten, können Sie mithilfe der IsAfterToday-Spalte oder der im Filterbereich verfügbaren Offset-Spalten steuern, was in Slicern angezeigt wird.
Fragen zum Bericht stellen
Als nächstes möchte ich darüber sprechen, ob Sie überhaupt einen Bericht erstellen sollten. Überprüfen Sie dabei, ob ein Bericht vorhanden ist, den Sie zur Erfüllung Ihrer Anforderungen verwenden können. Wenn kein Bericht vorhanden ist, gibt es ein vorhandenes Datenmodell, das Sie zur Erfüllung des Bedarfs verwenden können? Gibt es einen vorhandenen Datensatz, den Sie verwenden können, oder müssen Sie tatsächlich bei Null anfangen?
Bereitstellung und Referenzierung von Daten
Das nächste, worüber man beim Laden von Daten sprechen sollte, sind die Staging- und Referenzierungsdaten. Wenn Sie eine flache Datentabelle laden, befinden sich möglicherweise Fakten und Dimensionen in derselben Tabelle wie in einer Excel-Datei. Wenn Sie einen Ladevorgang durchführen und ihn in einen Staging-Abfrageabschnitt verschieben und umbenennen, können Sie das Kontrollkästchen „ Laden aktivieren“ deaktivieren .
Der nächste Schritt besteht darin, für jede Fakt- und Suchdimension eine Referenz dieser Tabelle zu erstellen und die Tabellen entsprechend umzubenennen. Bearbeiten Sie jede Referenz, behalten Sie nur die benötigten Spalten bei und entfernen Sie Duplikate.
Organisieren Sie Ihr Datenmodell und ordnen Sie es einer eigenen Gruppe zu. Ich habe in meinen Datenmodellen immer eine Gruppe namens „Datenmodell“, die alle Tabellen enthält, die ich in meinen Visuals verwenden werde.
Reduzierung der Datenlast
Als nächstes muss über die Leistung des Tools beim Laden von Daten gesprochen werden. Einer der größten Einflussfaktoren auf die Leistung ist das Datenvolumen. Bemühen Sie sich daher, die zu ladende Datenmenge so weit wie möglich zu reduzieren.
Folgen Sie diesem Axiom:
Wenn Sie es nicht benötigen, rufen Sie es nicht ab.
Es ist viel einfacher, einem Bericht neue Dinge hinzuzufügen, als Dinge aus unserem Bericht herauszunehmen. Auch wenn Sie zu viele Dinge in einen Bericht aufnehmen, zahlen Sie einen Nachteil für die Leistung, die Sie nicht erleben müssen.
Führen Sie die Filterung vorzugsweise in der Quelle durch. Wenn dies in der Quelle nicht möglich ist, verwenden Sie den Dropdown-Pfeil für den automatischen Filter in der Power-Abfrage, um die Felder zu filtern, die Sie interessieren.
Außerdem können Sie in der Quelle die Anzahl der angezeigten Spalten reduzieren, indem Sie das Dropdown-Menü „ Spalten auswählen “ verwenden und nur die Spalten auswählen, die für Sie von Interesse sind.
Sie können entweder „Spalten auswählen“ oder „Spalten entfernen“ verwenden . Ich empfehle die Verwendung von „Spalten auswählen“ als bewährte Vorgehensweise, da es einfach ist, darauf zurückzugreifen.
Wenn Sie Ihre Meinung zu einem späteren Zeitpunkt ändern, können Sie dies schnell über die Benutzeroberfläche tun, anstatt in den erweiterten Editor zu gehen und den M-Code direkt zu bearbeiten.
Abfragefaltung
Die Abfragefaltung ist ein weiterer Versuch von LuckyTemplates beim Laden von Daten, mehrere Datenauswahl- und Transformationsschritte in einer einzigen Datenquellenabfrage zu kombinieren.
Um festzustellen, ob eine Abfrage gefaltet wird, klicken Sie mit der rechten Maustaste auf die angewendeten Schritte einer Abfrage. Sie können sehen, ob eine native Abfrage ausgegraut ist.
Wenn es ausgegraut ist, wird die Abfrage nicht gefaltet. Wenn es nicht ausgegraut ist, kann die Abfrage eingeklappt werden.
Gehen wir zu „Daten transformieren“ und dann zu „Leistungsabfrage“ . Wenn ich in dieser Tabelle mit der rechten Maustaste auf den Navigationsschritt klicke, sehe ich, dass „ Native Abfrage anzeigen“ nicht ausgegraut ist, sodass ich sie auswählen kann.
Wir werden hier eine einfache SQL-Select-Anweisung sehen.
Wenn wir nach Abschluss der Filterung mit dem nächsten Schritt fortfahren und die native Abfrage anzeigen, können wir sehen, dass die Abfrage geringfügig geändert wurde und am Ende dieser Abfrage eine „Where“-Klausel steht.
Wenn wir zum dritten Schritt gehen und mit der rechten Maustaste darauf klicken, sehen wir, dass die native Abfrage nicht ausgegraut ist, sodass wir sie noch einmal auswählen können.
Sobald wir eine Auswahl getroffen haben, können wir sehen, dass die drei Abfragen noch stärker zu einer zusammengefasst werden. Damit sagt LuckyTemplates, dass der beste Weg, die Daten in das Modell zu bekommen, darin besteht, dass die Quelle die Arbeit erledigt und nicht ich die Arbeit mache.
Verwenden von Datenquellen für die Abfragefaltung
Datenquellen, die normalerweise mit der Abfragefaltung verwendet werden können, sind Standardobjekte in relationalen Datenbanken wie Tabellen und Ansichten.
Benutzerdefinierte SQL-Abfragen an relationale Datenbanken können die Abfragefaltung nicht verwenden. Flatfiles und Webdaten können ebenfalls nicht gefaltet werden.
Einige der Transformationen, die bei der Abfragefaltung verwendet werden können , sind das Filtern von Zeilen , das Entfernen von Spalten , das Umbenennen von Spalten und das Verknüpfen mit anderen Abfragen aus derselben Datenquelle.
Zu den Transformationen, die bei der Abfragefaltung nicht verwendet werden können, gehören das Hinzufügen von Indexspalten , das Ändern von Spaltendatentypen und das Zusammenführen oder Anhängen von Abfragen aus verschiedenen Datenquellen .
Auswahl des richtigen Verbindungsmodus
Um die Leistung zu verbessern, müssen Sie als Nächstes den richtigen Verbindungsmodus auswählen. Der Importmodus ist die Standardeinstellung und sollte nach Möglichkeit verwendet werden, da er die beste Berichtsleistung bietet.
Der Direktabfragemodus kann verwendet werden, wenn aktuelle Daten gewünscht werden. Beachten Sie jedoch, dass dies negative Auswirkungen auf die Leistung haben kann und wahrscheinlich auch haben wird.
Schließlich ist ein Live-Verbindungsmodus verfügbar, wenn Sie auf Data Warehouses wie mehrdimensionale SSAS-Cubes zugreifen.
Lokalisierung der Transformationen
Als nächstes möchte ich über den Ort sprechen, an dem diese Transformationen durchgeführt werden sollen. Der beste Ort dafür ist die Quelle . Wenn Sie sie in der Quelle nicht ausführen können, führen Sie sie in Power Query aus . Wenn Sie sie nicht in der Power-Abfrage ausführen können, dann tun Sie sie in DAX .
Führen Sie Ihre Datentransformationen so weit vorgelagert wie möglich und so weit nachgelagert wie nötig durch.
Wenn Sie bei der Leistungsabfrage etwas tun können, sollten Sie das wahrscheinlich auch tun.
Auch hier gilt: Wenn es sich nicht um etwas handelt, das im Kontext einer Berichtssitzung dynamisch ist, ziehen Sie bitte in Betracht, dies in Power Query zu tun, um Ihren DAX zu vereinfachen und die Leistung Ihres Berichts zu steigern.
Was die Form Ihrer Tabellen anbelangt, achten Sie darauf, dass die Faktentabellen lang und dünn sind und dass die Dimensionstabellen kurz und breit sind .
Best Practices für Benennung und Datentypen
Verwenden Sie ein einheitliches Benennungs- und Groß-/Kleinschreibungsschema, das für Berichtsbenutzer leicht verständlich ist. Benennen Sie Ihre Tabellen und Abfragen nach Bedarf um, um den Benennungs- und Schreibweisenstandards für Ihren Bericht zu entsprechen.
Benennen Sie Ihre Spalten nach Bedarf um, um diesen Benennungs- und Groß-/Kleinschreibungsstandards zu entsprechen, und benennen Sie auch Ihre Leistungsabfrageschritte nach Bedarf um, damit die Schritte selbsterklärend sind, da Sie möglicherweise nicht die Person sind, die den Bericht verwaltet.
LuckyTemplates gelingt die Zuordnung der richtigen Datentypen beim Datenimport hervorragend, manchmal sind aber auch einige Anpassungen notwendig. Sie sollten sicherstellen, dass Spalten in verschiedenen Tabellen als Verbindungsspalten zwischen zwei Tabellen mit demselben Datentyp verwendet werden.
Stellen Sie sicher, dass alle Ihre Datumsspalten Datum und nicht Text enthalten. Teilen Sie Ihre Datums-/Uhrzeitspalten in separate Datums- und separate Zeitspalten auf.
Überprüfen Sie als letzten Schritt noch einmal Ihre Datentypen . Machen Sie es sich zur Gewohnheit, Ihre Datentypen immer erneut zu überprüfen, bevor Sie in der Power-Abfrage auf „ Schließen“ und „Übernehmen“ klicken , da bestimmte Transformationen Datentypen stillschweigend in Text umwandeln können.
Datenbeschaffung mit konsistenter Granularität
Als letztes muss die Granularität besprochen werden. Während des Datenlade- und Transformationsprozesses sollten Sie darauf achten, dass Ihre Daten eine konsistente Granularität aufweisen. Wenn Sie verschiedene Granularitäten in Ihrer Lösung kombinieren, verwenden Sie Power Query (vorzugsweise) oder DAX, um die Referenzdaten entsprechend zuzuordnen.
Wenn sich Ihre Hauptverkaufsdaten beispielsweise auf Tagesebene befinden, ist die Granularität täglich. Wenn Ihre Budgetreferenzdaten auf monatlicher Ebene vorliegen, ist die Granularität monatlich. Hier ist ein Beispiel für eine DAX-Formel für die Budgetzuweisung, die Sie bei der Durchführung der Granularitätsanpassungen überprüfen können.
Abschluss
Ich hoffe, dass Sie dieses Tutorial zum Laden und Transformieren von Daten hilfreich fanden. Wenn ja, vergessen Sie bitte nicht, den YouTube-Kanal von LuckyTemplates zu abonnieren, um sicherzustellen, dass Sie über alle neuen Inhalte informiert werden.
Gregor
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