什麼是 Python 中的自我:真實世界的例子
什麼是 Python 中的自我:真實世界的例子
在本教程中,我將介紹可以編寫 DAX 公式的兩個地方。這兩個地方就是計算出來的列和度量。您可以在本博客底部觀看本教程的完整視頻。
我將逐一逐一檢查,然後從計算列開始。
目錄
使用計算列
計算列是原始數據源中不存在的附加列。
這意味著我們需要將其物理添加到您的數據表中。
為此,您將一些DAX 公式邏輯放入列中以創建該附加列。這與在 Excel 中工作非常相似,您想要使用公式添加另一列。
在此示例中,我們將使用包含我們在零售店進行的所有銷售的事實表,並且我們將添加產品的價格。
價格實際上已經存在於這裡的產品表中,我們有原始銷售價格和當前價格。
但為了向您展示如何創建計算列,我還將把它添加到銷售表中。
在許多此類示例中,尤其是計算列中,您實際上並不需要創建這些列。
如果你有 Excel 背景,那麼你可能認為你必須這樣做,但在 LuckyTemplates 中你不必這樣做。我這樣做只是為了向您展示什麼是計算列。
但稍後,我將向您展示如何實際使用度量來運行這些計算,而不是在數據表中添加物理列。
所以讓我們在這裡添加價格,就像我們的第一個例子一樣。
要創建計算列,請打開建模功能區並選擇新建列。
我將在此處編寫一些非常簡單的邏輯,以將價格添加到此列中。我將其稱為 Sales Price,然後使用RELATED函數引用列名。
在這種情況下,我將引用當前價格列。這將為我提供每件已售出商品的銷售價格。
RELATED函數引入了每個單獨產品的價格。
然後我們可以在這裡寫一個新列並將其稱為Total Revenue。我們使用公式:
總收入 = 銷售額[數量] * 銷售額[銷售價格]
這些只是您可以如何創建計算列的一些示例。
您還可以在數據模型的任何表中創建計算列。它不一定只是事實表或銷售表。它也可以在您的查找表中。
例如,我們跳轉到這個詳細的日期表。將這些列視為將成為 DAX 度量過濾器的列。
當我查看這張表時,我發現這裡有一個目前不存在的維度,我可能想將其放入我的一些可視化中。
為了展示另一種創建計算列的方法,我將使用 MonthName 列。
這裡的 MonthName 是完整的月份,但我只想要每個月的前三個字母。
所以我要去建模功能區中的新列並將此列稱為Short Month。
我將使用一些您可能熟悉的 Excel 邏輯。我將使用 LEFT,然後找到我的月份名稱,我將只使用該月份名稱的前三個字母。
現在,如果我們走到一邊,我們將看到短月份列,其中只有每個月的前三個字母。
我喜歡將此稱為為分析添加額外的維度,因為我們實質上創建了另一個過濾器,我們可以在從現在開始進行的任何分析中使用它。
如果我們回到數據模型,您會看到短月份列現在存在於我們的日期表中,它可以過濾我們在這個銷售表中所做的任何事情。
因此,如果我們將運行計算併計算數量,我們現在可以按短月過濾它。
我想重申一下,不建議您在此處創建這些列,因為我們實際上可以在內存中創建所有這些計算。
通過創建度量,我們可以進行這些內部計算,而不必將它們物理地放在表中。
當您學習如何在數據表之上編寫 DAX 公式時,這是要記住的關鍵事情。
使用措施
現在讓我們談談措施。
將度量視為虛擬計算。它實際上並不位於您的模型內部,而是位於您的模型之上。
當您使用度量時,它只會在您使用它時進行計算。
在 Excel 中,每次在列或任何單元格中運行計算時,它都會重新計算。但在 LuckyTemplates 中,度量僅在需要時才計算自身。
度量就像一個存儲的計算過程,只有在可視化中使用它才會啟用。
因此,讓我們創建一個簡單的度量來突出這一點。首先,我要選擇銷售表,然後選擇其中的任意列。
要創建新度量,請轉到“建模”功能區並單擊“新建度量”。
單擊該圖標會打開此公式欄,您可以在其中輸入公式:
我將輸入Total Quantity Sold以獲得 Sales 表中 Quantity 列的總和。
現在我們有了這個非常簡單的度量,它幾乎完成了計算。
它還在計算內存中的所有內容。換句話說,這是在計算我們一直以來售出的商品總數。
這裡要記住的關鍵是這個度量只是存儲在我們的模型中,但它實際上並沒有去運行任何計算,除非我們將它拖到我們的報告頁面上。然後它將去虛擬地運行計算。
因此,在這種情況下,該度量實際上進入了 Sales 表,進入該表中的 Quantity 列,然後對整個列進行求和。
這實際上稱為聚合度量,我們將很快討論。
現在我要創建一個新的衡量標準,並將其稱為Total Sales。然後,我將使用名為SUMX的迭代函數,稍後我將在另一個模型中對其進行解釋。
我參考了 Sales 表,並得出了這個公式:
總銷售額 = SUMX(銷售額,銷售額[數量] * RELATED(產品[當前價格])
如果您還記得的話,我們實際上並未將此相關當前價格放入數據表中。但在這種情況下,我實際上是通過將其合併到該度量中來將其放入數據表中。
然後迭代函數SUMX轉到 Sales 表並選擇表中的每一行乘以數量乘以相關的當前價格。
這個總銷售額現在會給我一個結果。
您還可以在“建模”選項卡中進行格式化,您的數據類型位於頂部。
了解如何獲取 LuckyTemplates 切片器選擇以在其他度量中使用 將 工作日和周末日期數字放入 LuckyTemplates 中的日期表中 顯示截至當前日期或 LuckyTemplates 中特定日期的結果
結論
我們討論了計算列和度量,您可以在其中編寫 DAX 公式。
計算列的關鍵是您實際將一列數據放入模型中。如果您有時在一些較大的表上這樣做,那麼這些表可能是非常大的列。
重要的是要認識到這些計算列會佔用模型中的大量內存。
它們會使您的文件變大,並且有時會影響性能,具體取決於表的大小。
但是您可以通過有效地使用措施來虛擬地運行大量此類計算來抵消這種情況。您仍然會得到與編寫這些計算列相同的結果。
我希望本教程能讓您更清楚地了解可以在其中編寫 DAX 公式的兩個位置以及編寫 DAX 公式時的注意事項。
這還將幫助您了解如何將 DAX 合併到 LuckyTemplates 中的分析中。
喜歡回顧這個。
什麼是 Python 中的自我:真實世界的例子
您將學習如何在 R 中保存和加載 .rds 文件中的對象。本博客還將介紹如何將對像從 R 導入 LuckyTemplates。
在此 DAX 編碼語言教程中,了解如何使用 GENERATE 函數以及如何動態更改度量標題。
本教程將介紹如何使用多線程動態可視化技術從報告中的動態數據可視化中創建見解。
在本文中,我將貫穿過濾器上下文。篩選上下文是任何 LuckyTemplates 用戶最初應該了解的主要主題之一。
我想展示 LuckyTemplates Apps 在線服務如何幫助管理從各種來源生成的不同報告和見解。
了解如何在 LuckyTemplates 中使用度量分支和組合 DAX 公式等技術計算利潤率變化。
本教程將討論數據緩存物化的想法,以及它們如何影響 DAX 在提供結果時的性能。
如果直到現在你還在使用 Excel,那麼現在是開始使用 LuckyTemplates 來滿足你的業務報告需求的最佳時機。
什麼是 LuckyTemplates 網關?所有你必須知道的