使用 M 或 Python 的 PowerBI 正则表达式
PowerBI Regular Expression Using M or Python
我以前从未在 PowerBI 中使用过 Python,但我使用过 Python。不过,我对 Python 或 M 语言解决方案很满意。
假设我有一个看起来像这样的专栏:
EntryTime
12:00:00 - 01:10:00
01:00:30 - 05:10:50
2020-11-03 R
2010-03-31 R
2020-04-01 R
我想用 NULL
值替换所有包含此格式且不区分大小写的值:
yyyy-MM-dd( )+[R]
如何使用 M 或 Python 在 PowerBI 中实现此功能?请非常具体,因为我之前没有在 PowerBI 中使用过 Python。
M
没有执行任何正则表达式操作的本机函数。您可以使用 Python
.
第 1 步:将 EntryTime
的列数据类型更改为 Text
。
第 2 步:转到 Transform
-> Run Python Script
第 3 步:粘贴以下代码并单击 ok
。
# 'dataset' holds the input data for this script
import pandas as pd
pat = r'\d{4}-\d{2}-\d{2} R'
dataset["New"] = dataset["EntryTime"].str.replace(pat,'')
第 4 步:您将得到一个 window,其中包含 Name
和 Value
,如下所示。
第 5 步:单击 Value
列下的 Table
。您将得到如下所示的结果。
我以前从未在 PowerBI 中使用过 Python,但我使用过 Python。不过,我对 Python 或 M 语言解决方案很满意。
假设我有一个看起来像这样的专栏:
EntryTime
12:00:00 - 01:10:00
01:00:30 - 05:10:50
2020-11-03 R
2010-03-31 R
2020-04-01 R
我想用 NULL
值替换所有包含此格式且不区分大小写的值:
yyyy-MM-dd( )+[R]
如何使用 M 或 Python 在 PowerBI 中实现此功能?请非常具体,因为我之前没有在 PowerBI 中使用过 Python。
M
没有执行任何正则表达式操作的本机函数。您可以使用 Python
.
第 1 步:将 EntryTime
的列数据类型更改为 Text
。
第 2 步:转到 Transform
-> Run Python Script
第 3 步:粘贴以下代码并单击 ok
。
# 'dataset' holds the input data for this script
import pandas as pd
pat = r'\d{4}-\d{2}-\d{2} R'
dataset["New"] = dataset["EntryTime"].str.replace(pat,'')
第 4 步:您将得到一个 window,其中包含 Name
和 Value
,如下所示。
第 5 步:单击 Value
列下的 Table
。您将得到如下所示的结果。