Number.From(List.Contains({1,2,6,6,15},y))”],[20,”\n”,”24:\”1wjY\”|36:0″],[ 20,” )”],[20,”\n”,”24:\”b2dc\”|36:0″],[20,”在”],[20,”\n”,”24:\ “4MuX\”|36:0″],[20,”组”],[20,”\n”,”24:\”CLh2\”|36:0″],[20,”\n”, “24:\”08UW\””],[20,”这个问题是一个关于创建自定义组的非常经典的问题。 巧妙利用Table.Group函数第四个参数为0时局部分组的特性,然后利用第五个参数设置第二个参数的判断条件,完成分组。 “],[20,”\n”,”24:\”C46C\””],[20,”\n”,”24:\”B3hc\””],[20,”使用的 List.Transform 函数、List、Distinct 函数、Numbwer.From 函数、List.Contains 函数和 List.Combine 函数。 “],[20,”\n”,”24:\”Gz00\””],[20,”\n”,”24:\”plS1\””],[20,”关于这些函数 简单函数主要有:”],[20,”\n”,”24:\”sot9\””],[20,”List.Transform函数主要用于列表转换;”],[20,” \n”,”24:\”ipbk\””],[20,”List.Distinct用于对list列表中的元素进行去重;”],[20,”\n”,” 24:\”ujCi \””],[20,”List.Contains函数是判断一个基本列表是否包含另一个列表中的元素;”],[20,”\n”,”24:\” FDnZ\””],[ 20、“List.Combine是组合列表。 “],[20,”\n”,”24:\”QFS7\””]]”>
数据来源如下图所示。
分组结果如下:
对于这个分组问题,可以使用Table.Group函数的第五个参数。
所以M公式可以写成:
let
源 = Excel.CurrentWorkbook(){[Name="表1"]}[Content],
分组 = Table.Group(源,
"num",
{
"n",
each
Text.Combine(
List.Transform(
List.Distinct({_[num]{0},List.Last(_[num])}),
Text.From),"-")
},
0,
(x,y)=>Number.From(List.Contains( {1,2,6,6,15},y))
)
in
分组
这个问题是一个关于创建自定义组的非常经典的问题。 巧妙利用Table.Group函数第四个参数为0时局部分组的特性,然后利用第五个参数设置第二个参数的判断条件,完成分组。
使用List.Transform函数、List,Distinct函数、Numbwer.From函数、List.Contains函数和List.Combine函数。
这些函数的简单作用主要是:
List.Transform函数主要用于列表转换;
List.Distinct用于对列表中的重复元素进行去重;
List.Contains 函数主要确定一个列表是否包含另一个列表中的元素;
List.Combine 合并列表。