Table.AlternateRows删除间隔….Alternate…(Power Query 之 M 语言)

Posted 小妖同学

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Table.AlternateRows删除间隔….Alternate…(Power Query 之 M 语言)相关的知识,希望对你有一定的参考价值。

数据源:

       “姓名”“基数”“个人比例”“个人缴纳”“公司比例”“公司缴纳”“总计”,共7列7行数据

目标:

       留下第1、2、5三行数据

操作过程:

       【主页】》【删除行】》【删除间隔行】》输入删除的起始行》输入待删除的行数》输入删除行后面要保留的行数》【确定】

  

Table.AlternateRows删除间隔….Alternate…(Power

M公式:

       = Table.AlternateRows( 表, 起始行, 间隔删除的行数, 间隔保留的行数)

说明:

       删除的起始行在公式中由0开始计数,如上图三个数字分别是3、2、1,在公式中则是2、2、1。

  

Table.AlternateRows删除间隔….Alternate…(Power

  当实际行数大于余下保留的行时,这样的删除循环,如= Table.AlternateRows(步骤名,0,1,2),是从第1行起,删除1后,保留两行。如原数据在4行以内则保留2、3两行;7行以内则保留2、3、5、6四行;10行以内则保留2、3、5、6、8、9……以此类推。好吧,这样写有点支持头晕模式了,换个说法,就是从“第一参数”里,从“第二参数”开始,间隔着删除“第三参数”,保留“第四参数”,如此循环,直到最后一行。

  

Table.AlternateRows删除间隔….Alternate…(Power

  

Table.AlternateRows删除间隔….Alternate…(Power

最终效果:

       数据只剩下1、2、5三行数据 

扩展:

  列表删除间隔项:=List.Alternate( 列表, 间隔删除的项数, 间隔保留的项数, 起始保留的项数) 

    =List.Alternate( 列表, 第二参数),相当于=List.Skip( 列表, 删除的项数)

      =List.Alternate(1..10, 5),结果为6、7、8、9、10

    =List.Alternate( 列表, 第二参数, 第三参数),第二参数除是表示间隔删除的项数以外,还相当于起始项。

      =List.Alternate(1..10, 2, 3),结果为3、4、5、8、9、10

    所有参数完整时,结果是第四参数指定行数全部显示,并且后面的结果在原公式没有第四参数的基础上向下偏移第四参数。

      =List.Alternate(1..10, 2, 3, 1,结果为1、4、5、6、9、10  

原博客各种作……所以换阵地了,不过每篇都搬过来,实在有点累,想看就自己看吧:http://blog.sina.com.cn/pureiceshadow



以上是关于Table.AlternateRows删除间隔….Alternate…(Power Query 之 M 语言)的主要内容,如果未能解决你的问题,请参考以下文章

根据 30 秒内的时间间隔删除重复项

如何删除数据帧中的间隔之间的值

删除第二个数据帧间隔中的数据帧时间戳

使用 SQL,如何在时间序列中长时间间隔后删除案例?

Highcharts 图表删除类别(x 轴)上间隔中的现有刻度

NFS 时间间隔过长