power query中,each表达式的下划线在List.Transfrom函数和List.Generate函数中分别表示什么
时间: 2023-09-22 22:06:17 浏览: 87
### 回答1:
在Power Query中,Each表达式的下划线在List.Transform函数和List.Generate函数中的意义不同。
在List.Transform函数中,下划线表示当前元素,该函数将列表中的每个元素一个一个地进行转换。
在List.Generate函数中,下划线表示当前循环次数,该函数将从初始值不断地循环生成新的元素,直到满足某个条件为止。
### 回答2:
在Power Query中,each表达式中的下划线在List.Transform函数和List.Generate函数中分别表示不同的含义。
在List.Transform函数中,下划线代表当前元素。List.Transform函数可用于对列表中的每个元素应用相同的转换操作。在每个转换操作中,通过使用下划线来引用当前正在处理的元素。例如,如果我们有一个列表[1, 2, 3],并希望将每个元素都乘以2,我们可以使用List.Transform函数和each表达式来进行操作,如下所示:
List.Transform([1, 2, 3], each _ * 2)
运行结果为[2, 4, 6]。
而在List.Generate函数中,下划线则表示一个累加器。List.Generate函数用于生成一系列值,并在每次生成值时更新累加器。在每次生成值时,都可以使用下划线来引用当前的累加器值。例如,我们可以使用List.Generate函数生成一个从0到10的整数列表,如下所示:
List.Generate(() => 0, each _ < 11, each _ + 1)
运行结果为[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]。
因此,在List.Transform函数中,下划线表示当前元素,而在List.Generate函数中,下划线表示一个累加器。根据具体情况,我们可以使用each表达式来应用相应的转换或生成操作。
### 回答3:
在Power Query中,each表达式的下划线在List.Transform函数和List.Generate函数中分别表示不同的含义。
在List.Transform函数中,each表达式的下划线表示一个占位符,用以表示列表中的每个元素。通过使用each表达式,我们可以对列表中的每个元素进行处理或转换。在Transform函数中,我们可以使用下划线来引用当前正在处理的元素,通过对其进行操作来生成新的列表。
举个例子,假设我们有一个包含数字的列表[1,2,3,4,5]。我们可以使用List.Transform函数来将列表中的每个元素乘以2,并生成一个新的列表。表达式可以写成List.Transform([1,2,3,4,5], each _*2),这里的下划线表示当前正在处理的元素。最终的结果将是[2,4,6,8,10]。
在List.Generate函数中,each表达式的下划线表示用以生成列表的每个元素。List.Generate函数会根据一些指定的条件和生成规则来生成一个新的列表。我们可以使用下划线来引用每一次生成的元素,并指定生成条件。
例如,假设我们想生成一个包含斐波那契数列的列表,我们可以使用List.Generate函数来完成。可以将表达式写成List.Generate(()=>[0,1], each List.Last(_)<=100, each List.Combine({_,[0]+_[1],_[0]+_[1]}))。在这个例子中,下划线用来引用生成的列表元素。通过不断计算前两个元素的和来生成新的元素,直到列表中最后一个元素大于100为止。最终生成的斐波那契数列列表为[0,1,1,2,3,5,8,13,21,34,55,89]。
总之,在Power Query的List.Transform函数和List.Generate函数中,each表达式的下划线分别表示列表中的每个元素和生成列表的每个元素。