List.Accumulate 函数的初始值确定

Power Query 偃月 ⋅ 于 2018-12-28 11:21:46 ⋅ 最后回复由 paopao 2019-04-04 15:54:37 ⋅ 1484 阅读

看完了Power Query 学习 03 如何系统学会 List.Accumulate。
但是很迷糊
我就想知道怎么确定初始值?怎么确定初始值的类型?这块太迷糊了,迷糊的什么都做不了,怎么确定初始值呢???确定初始值的技巧是?
关于初始值里面的参数尤其涉及三个四个的参数该怎么办???哪位老师,能否指点迷津

成为第一个点赞的人吧 :bowtie:
回复数量: 9
  • 西瓜 喜欢excel
    2018-12-30 13:45:41

    这个核心就是第二参数,先去群主pq博客里学一下这个函数的用法,还有例子,,,,然后第二参数都是靠自己想象了....

  • 静静
    2019-01-01 10:29:48

    初始值是对你要处理的内容进行循环处理.
    参数描述为 seed as any, 可为 文本, 数值, list, record, table等.
    比如 对 文本 "abcdefg" 中的"b"替换成"x", "d"替换成"y", "g"替换成"z".
    那么这里的初始值即为文本("abcdefg").
    常规替换可以考虑用三次Text.Replace(然后一般重复性的操作,一般会有较为简洁步骤的写法.)
    然后用acc写是:
    List.Accumulate({{"b","x"}, {"d", "y"}, {"g", "z"}}, "abcdefg", (s,c)=>Text.Replace(s, c{0}, c{1}))
    s是初始文本值"abcdefg"
    c是前边list列表{{"b","x"}, {"d", "y"}, {"g", "z"}}中的各个小list,总共有3个.
    在循环的过程中,
    第一次调用{"b","x"}, 用"b"替换成"x", "b"在{"b","x"}中的索引为0,"x"在{"b","x"}中的索引为1, 所以是
    Text.Replace(s, c{0}, c{1}).
    第一次替换完的结果是 "axcdefg", 然后这个结果作为下一次(第二次)调用替换的初始值..
    第二次调用{"d", "y"},
    第二次替换完的结果是"axcyefg",然后这个结果作为下一次(第三次)调用替换的初始值.
    第三次调用{"g", "z"},
    第三次替换完的结果是"axcyefz"(也就是最终结果).
    思想就是:每次处理完的结果,都作为下一次处理的初始值.

  • 静静
    2019-01-01 10:32:02

    第一次调用{"b","x"}, 把"b"替换成"x".
    不是"用"字,是"把"字.

  • 偃月
    2019-01-03 17:50:16

    @静静 你说的这块我明白,我不明白的是“Power Query 学习 03 如何系统学会 List.Accumulate”中后面的例子中初始值确定的分析逻辑。

  • 偃月
    2019-01-03 17:51:38

    @静静 总之就是模糊 不会分析 具体用法逻辑已经明白了 就是怎么确定初始值模糊。

  • 静静
    2019-01-03 19:24:01

    @偃月 抱歉哈.

  • 阿苏德斯
    2019-01-04 13:08:08

    @静静 这个M函数里{},[],(),是什么意思啊?

  • 静静
    2019-01-04 15:18:04

    @阿苏德斯 {} 是 M语言中,结构list的表达形式, []则是结构record的表达形式.
    ()的话,一般是用来写函数公式的时候成对出现、设置自定义函数的时候使用或者运算优先级的时候使用等多种环境.
    比如 Text.Combine(...) 或者 fx=(x,y)=>... 或者t=(1+2)*3 ... 等...

  • paopao
    2019-04-04 15:54:37

    我跟你一样 案例看懂了 还是不晓得第二 参数怎么构建 只晓得大神喜欢用{}空List来装容器 ,自己要是构建就怎么构建怎么错 搞不懂 太难这函数

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