欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

table 合并列_Table.Group相邻的两个数合并案例

发布时间:2023/12/19 编程问答 53 豆豆
生活随笔 收集整理的这篇文章主要介绍了 table 合并列_Table.Group相邻的两个数合并案例 小编觉得挺不错的,现在分享给大家,帮大家做个参考.
本期案例是对相邻的两个不同的数进行合并,连续有多个相邻的数是相同的,则往后合并,直至使合并的非重复个数是两个为止,如果当前数与上一个数相同,则显示为空,合并后效果下:……源数据:{4,5,4,2,4,5,2,1,5,4,2,4,1,4,1,4,2,5,5,2,2,2,4,4,2,4,5,1,1}解题步骤提取相邻的数,自然就想到了可以通过添加索引列进行转换,那该案例就转换成了以下几种情况:1.如果相邻的上一个是相同的数,那么只要判断当前数与取得的{索引号-1}的数一致就为空值就可以,要增加一个索引号为0的判断条件。2.如果相邻的两个是不同的数,那就直接合并就可以。3.如果相邻有多个相同的数,要取到下一个不同的数,然后一起合并才满足要求,应该怎么处理?就比如{ 5,5,2,2,2,4,4,2},当前数为5,然后删除当前数后进行分组,就获得了:那就可以进行判断,如果分组后表的第一个数,通过Table.FirstValue是等于5的,那么我们提取[a]列的前两项,然后深化合并再连接5就得到了结果:4.最终结果:Table.RemoveColumns(Table.AddColumn(Table.AddIndexColumn(源,"Index"),"Combine",each if [Index]<>0 and 源[Value]{[Index]-1}?=[Value] then "" else [A=Table.Group(Table.FromColumns({List.Skip(源[Value],[Index]+1)}),"Column1",{"a",each _},0),B=if Table.FirstValue(A)=[Value] then Text.Combine({[Value]}&Table.Combine(List.FirstN(A[a],2))[Column1]) else Text.Combine({[Value]}&A[a]{0}[Column1])][B]),"Index")可以尝试连续三个或者多个数相连的操作,这里不再展开。以上是本期记录。

总结

以上是生活随笔为你收集整理的table 合并列_Table.Group相邻的两个数合并案例的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。