【Power Query】List.Range & List.Skip

★ List.Range (批量取列表里的元素)

List.Range (列表,索引值,个数)

——也就是从列表的下标几开始取,取几个元素
下标默认从0开始

例如:= List.Range( {1,2,3,4,5} , 1 , 3 ) 结果是{2,3,4} 如果只是跳过前几个,也可以用 List.Skip 来代替

。。。手动分割线。。。。
。。。手动分割线。。。。

例1: 计算累加值

写法参考
= Table.AddColumn(已添加索引, “自定义”, each List.Sum(List.Range(源[收入],0,[索引])))

意为:每一行都进行如下操作:
将源里 收入这列的值,从头开始取到当前行,再将它们求和

——前提是,先添加索引列,从1开始,可以直接在选项卡里做

。。。手动分割线。。。。

### Power Query 中 `List.Select` 函数的使用方法 `List.Select` 是 Power Query 中用于筛选列表项的强大工具。它允许基于指定条件返回符合条件的子集。以下是关于其功能、语法以及实际应用的具体说明。 #### 1. 基本语法 `List.Select` 的基本语法如下所示: ```powerquery List.Select(list as list, condition as function) as list ``` 其中: - **list**: 需要处理的目标列表。 - **condition**: 定义筛选逻辑的函数,该函数会作用于列表中的每一项并返回布尔值(True 或 False)。只有当返回 True 时,该项才会被保留到最终结果中[^1]。 #### 2. 实际案例分析 为了更好地展示如何运用此函数,请看以下实例: ##### 示例一:过滤偶数 如果有一个包含整数的列表 `[1..10]` ,希望从中选出所有的偶数值,则可以这样写: ```powerquery let Numbers = {1..10}, EvenNumbers = List.Select(Numbers, each Number.Mod(_, 2) = 0) in EvenNumbers ``` 上述代码片段里,“each Number.Mod(_, 2)” 表达了一个匿名函数,用来测试每一个元素能否被二整除;若能则满足我们的选取标准[^2]。 ##### 示例二:提取字符串长度大于三的部分 假设有这样一个由单词组成的数组 `{ "apple", "bat", "carrot", "dog" }`, 我们只关心那些字符数量超过三个字串的情况: ```powerquery let Words = {"apple","bat","carrot","dog"}, LongWords = List.Select(Words, each Text.Length(_) > 3 ) in LongWords ``` 这里利用了内置的文本长度计算命令 `Text.Length()` 对各词条逐一评估长短关系,并据此决定取舍[^3]。 #### 3. 提升效率的小技巧 正如之前提到过的那样,在日常工作中灵活调整现成公式有助于加深对各个组件的理解程度。比如当你发现某段脚本能完成特定任务之后,不妨试着自行修改参数或者尝试其他变形版本看看效果怎样变化。这种实践过程往往能够带来意想不到的学习收获[^4]。 ```python def example_function(x): """A simple Python equivalent to demonstrate selection logic.""" filtered_list = [item for item in x if len(str(item)) > 3] return filtered_list print(example_function([123,"short","longerword"])) ``` 以上Python伪码进一步诠释了相同概念下的不同实现方式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值