Power Query Filter By A Specific First Letter Or Character教程

Power Query Filter By A Specific First Letter Or Character教程

此 Power Query 過濾器教程將演示解決 Excel BI 的表過濾器挑戰的幾種方法。這個挑戰的目標是過濾掉第二個單詞以字母“C”開頭的名字。

這個 Excel BI 挑戰是練習和磨練 LuckyTemplates 技能的絕佳機會。您還可以在這裡學習和發現該領域的專家使用的許多很棒的技術。您可以在本博客底部觀看本教程的完整視頻

目錄

Power Query 過濾器方法 # 1

讓我們轉到Power Query 編輯器來解決這個問題。我們將盡可能多地 使用用戶界面及其工具,並尋找以字母C開頭的第二個詞。在 Transform 選項卡上,我們將轉到 Extract 並選擇 Text After Delimiter

Power Query Filter By A Specific First Letter Or Character教程

Power Query Filter By A Specific First Letter Or Character教程

在上面的 Text After Delimiter 窗口中,我們可以在那裡輸入一個空格,按 OK, 然後得到下面的列表。當然,下面的結果與我們想要的不同,但它為我們 創建了一個關鍵的語法。

Power Query Filter By A Specific First Letter Or Character教程

讓我們在每個字符串中保留我們的起始字母。所以在公式欄中,我們將添加另一個函數 Text.Start,保留一個字符,然後按下複選標記。

Power Query Filter By A Specific First Letter Or Character教程

剩下的就是將這個結果與字母 C 進行比較。在等式的末尾,我們可以說 = C 並再次按下複選標記

Power Query Filter By A Specific First Letter Or Character教程

我們已經成功創建了可用於過濾表的邏輯。接下來,我們需要復制編輯欄中的語法 ( Ctrl + C ) 並按X退出我們的步驟。

Power Query Filter By A Specific First Letter Or Character教程

之後,我們創建一個虛擬過濾器。

Power Query Filter By A Specific First Letter Or Character教程

我們粘貼回 (Ctrl + V) 我們剛剛創建的邏輯,剪切 (ctrl + x) 列引用並刪除最後一部分。我們得到的是下圖。

Power Query Filter By A Specific First Letter Or Character教程

當您突出顯示最後一個括號時,如果它屬於 Table.SelectRows 函數,那麼您就可以開始了。最後,我們沒有在Text.AfterDelimeter後面加下劃線 ,而是粘貼回該列選擇並按下該複選標記。

我們在下面看到它有效!

Power Query Filter By A Specific First Letter Or Character教程

Power Query 過濾器方法 # 2

現在,對於本 Power Query 篩選器教程中的第二種方法,我們將做一些稍微不同的事情。我們將使用幾種不同的Power Query 函數,但也會使比較區分大小寫。

Power Query Filter By A Specific First Letter Or Character教程

大部分結構已經在我們之前的公式欄中。因此,我們將復制上面突出顯示的語法並按  前面的fx以便我們可以使用它來構建我們的第二種方法。

Power Query Filter By A Specific First Letter Or Character教程

然後我們刪除上圖中的前一步引用(“過濾行”)並粘貼回我們的語法以替換它。最後,我們再次按下複選標記。

Power Query Filter By A Specific First Letter Or Character教程

將單詞拆分成列表

我們將使用Text.Split拆分列表中的單詞, 而不是編輯欄內的 Text.AfterDelimeter 。這包括拆分名稱列和空格,如下所示:

Power Query Filter By A Specific First Letter Or Character教程

每個單詞在列表中都有其位置,要提取第二個位置的單詞,我們可以使用項目訪問。所以在一組花括號中,我們可以引用它從零開始的索引位置。要獲得位於第二位的內容,我們必須在此處輸入1

Power Query Filter By A Specific First Letter Or Character教程

但我們也想保護這一點,因為如果在給定時刻輸入的字符串當時只包含一個單詞,則該列表中不會有第二個項目,並且會返回錯誤。

將必需項更改為可選項訪問權限將解決潛在的未來問題。為此,我們所要做的就是在末尾添加一個問號 ( ? )。

Power Query Filter By A Specific First Letter Or Character教程

添加問號會將必需的項目訪問權限更改為可選的項目訪問權限。這意味著如果列表中不存在某個項目,則返回 null 而不是錯誤。

我們還要更改函數 Text.Start, 因為我們要使用具有可選比較參數的函數。因此,我們將使用 Text.StartsWith而不是 Text.Start ,在問號後添加一個逗號並放置 “C”,即我們要查找的子字符串。

Power Query Filter By A Specific First Letter Or Character教程

然後我們可以使用該 Compare 函數, 因此我們輸入並選擇 Comparer.OrdinalIgnoreCase。並記住添加右括號以列出選擇的行。

Power Query Filter By A Specific First Letter Or Character教程

我們快完成了。剩下要做的就是看看它是否返回 true,所以讓我們 在公式末尾添加= true 並按下複選標記。現在這個過程完成了!

Power Query Filter By A Specific First Letter Or Character教程


如何動態合併 Power Query 表中的列
Power Query:如何合併具有不同列的表
擴展日期表 Power Query M 函數

結論

在此 Power Query 篩選器教程中,你已經看到了兩種應對錶篩選器挑戰的方法。第一個使用  Transform 選項卡中的 Text After Delimiter以及Table.SelectRows 和 Text.Start 函數。

同時,第二個放棄使用 Text After Delimiter 並將 Text.Split函數替換為 Text.Start 以拆分列表中的單詞。它還使用比較函數 Comparer.OrdinalIgnoreCase。 

您可以探索這兩個表格過濾器選項,以找到更適合您的方法!


什麼是 Python 中的自我:真實世界的例子

什麼是 Python 中的自我:真實世界的例子

什麼是 Python 中的自我:真實世界的例子

如何在 R 中保存和加載 RDS 文件

如何在 R 中保存和加載 RDS 文件

您將學習如何在 R 中保存和加載 .rds 文件中的對象。本博客還將介紹如何將對像從 R 導入 LuckyTemplates。

回顧前 N 個工作日——DAX 編碼語言解決方案

回顧前 N 個工作日——DAX 編碼語言解決方案

在此 DAX 編碼語言教程中,了解如何使用 GENERATE 函數以及如何動態更改度量標題。

在 LuckyTemplates 中使用多線程動態視覺技術展示見解

在 LuckyTemplates 中使用多線程動態視覺技術展示見解

本教程將介紹如何使用多線程動態可視化技術從報告中的動態數據可視化中創建見解。

LuckyTemplates 篩選上下文簡介

LuckyTemplates 篩選上下文簡介

在本文中,我將貫穿過濾器上下文。篩選上下文是任何 LuckyTemplates 用戶最初應該了解的主要主題之一。

使用 LuckyTemplates 在線服務中的應用程序的最佳技巧

使用 LuckyTemplates 在線服務中的應用程序的最佳技巧

我想展示 LuckyTemplates Apps 在線服務如何幫助管理從各種來源生成的不同報告和見解。

隨著時間的推移分析利潤率變化——使用 LuckyTemplates 和 DAX 進行分析

隨著時間的推移分析利潤率變化——使用 LuckyTemplates 和 DAX 進行分析

了解如何在 LuckyTemplates 中使用度量分支和組合 DAX 公式等技術計算利潤率變化。

DAX Studio 中數據緩存的物化想法

DAX Studio 中數據緩存的物化想法

本教程將討論數據緩存物化的想法,以及它們如何影響 DAX 在提供結果時的性能。

使用 LuckyTemplates 進行業務報告

使用 LuckyTemplates 進行業務報告

如果直到現在你還在使用 Excel,那麼現在是開始使用 LuckyTemplates 來滿足你的業務報告需求的最佳時機。

什麼是 LuckyTemplates 網關?所有你必須知道的

什麼是 LuckyTemplates 網關?所有你必須知道的

什麼是 LuckyTemplates 網關?所有你必須知道的