一列数据在不新增列、不拆分源数据表情况下,前 20 行、后 30 行分别做不同运算

Power Query Wally ⋅ 于 2020-03-06 11:06:40 ⋅ 最后回复由 海中的海 2020-03-26 18:33:26 ⋅ 2558 阅读

一列数据在不新增列、不拆分源数据表情况下,前20行、后30行分别做不同运算,
比如下图,前20行数据乘以10,后30行数据除以100,不想拆分表格,新增列,怎么在这列数据直接操作?
求大神指点,谢谢!!
file

越努力越幸运

最佳答案
  • Alex MOD 社区清洁工
    2020-03-06 13:33:42

    最简单的方法,先添加索引列,然后根据索引列添加条件列。
    不新增列的话,用FirstN/LastN分别取前后对应的行数,然后分别transform转换,最后合并。

    = Table.TransformColumns(Table.FirstN(源,20),{},each _*10) & Table.TransformColumns(Table.LastN(源,30),{},each _/100)

    file

回复数量: 8
  • Alex MOD 社区清洁工
    2020-03-06 13:33:42

    最简单的方法,先添加索引列,然后根据索引列添加条件列。
    不新增列的话,用FirstN/LastN分别取前后对应的行数,然后分别transform转换,最后合并。

    = Table.TransformColumns(Table.FirstN(源,20),{},each _*10) & Table.TransformColumns(Table.LastN(源,30),{},each _/100)

    file

  • Wally PowerBI菜鸟
    2020-03-06 14:23:18

    感谢大神回复!
    我也试过您说的索引列+条件列的方法,可是到了输出值的时候,应该怎么写呢?写 “[原列名]/100” 得出的结果是把 “[原列名]/100”这几个字填充到对应的位置了,怎样填写才能得出正确的值呢?

  • Wally PowerBI菜鸟
    2020-03-06 14:23:41

    @Alex 感谢大神回复!
    我也试过您说的索引列+条件列的方法,可是到了输出值的时候,应该怎么写呢?写 “[原列名]/100” 得出的结果是把 “[原列名]/100”这几个字填充到对应的位置了,怎样填写才能得出正确的值呢?

  • Alex MOD 社区清洁工
    2020-03-06 14:56:19

    @Wally 先勾选视图-编辑栏,你会看到每个步骤的M代码,你说的结果是 “[原列名]/100”这几个字的情况,是因为外面有双引号作为文本了,直接把双引号去掉就可以了。

    修改前:

    if [索引]<=20 then "[原列名]*10" else "[原列名]/100"

    修改后:

    if [索引]<=20 then [原列名]*10 else [原列名]/100
  • Wally PowerBI菜鸟
    2020-03-06 15:23:22

    @Alex
    谢谢大神,已经解决问题!
    file
    还是想问一下,可视化操作里面是不能这么写的吗? 这里没加引号,在M函数里还是出现引号。高级编辑里面删掉引号就可以了。

  • Alex MOD 社区清洁工
    2020-03-06 16:00:50

    @Wally 不能,但是用可视化操作可以用其他方法替代啊,比如先根据索引添加条件列添加一列系数,索引<=20是10否则是0.01,然后用原列乘以系数。很多可视化操作不一定能直接实现,但间接总是可以实现的,无非多点步骤罢了。

  • Wally PowerBI菜鸟
    2020-03-06 16:03:45

    @Alex 受教了,谢谢大神!以后还请多指点!

  • 海中的海 新人来学习
    2020-03-26 18:33:26

    file用List.Range取范围,然后List.Transform计算也行

暂无评论~~
  • 请务必阅读并严格遵守《社区管理规范与使用说明》
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,使用方法请见 发送表情,可用的 Emoji 见 :metal: :point_right: Emoji 列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板粘贴上传, 格式限制 - jpg, png, gif
  • 不支持上传附件,请尽可能用文字和图片将问题描述清楚,如实在需要上传附件,可上传到 共享网盘 后分享链接
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
  请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
Ctrl+Enter