分组汇总后再根据数量拼上不同文字

Excel某表格有2列。

|---|------------|---|
| | A | B |
| 1 | Apples | 3 |
| 2 | Apples | 0 |
| 3 | Bananas | 1 |
| 4 | Bananas | 6 |
| 5 | Cantaloupe | 0 |
| 6 | Kiwis | 2 |
| 7 | Kiwis | 2 |
| 8 | Kiwis | 1 |

要求:按第1列分组,如果组内第2列大于0则对当前行进行计数,否则不计数;计数结果等于1则附加Occurrence,否则附加 Occurrence 的复数形式。

|---|------------|---------------|
| | A | B |
| 1 | Apples | 1 Occurrence |
| 2 | Bananas | 2 Occurrences |
| 3 | Cantaloupe | 0 Occurrences |
| 4 | Kiwis | 3 Occurrences |

使用 SPL XLL

复制代码
=spl("=E@b(?.group(~1;t=~.count(~2>0) / if(t==1,""Occurrence"",""Occurrences"")))",A1:B8)

函数 group 分组并计算每组数据,E@b 去掉列头,~1 表示序列的当前成员的第 1 个子成员。

相关推荐
枕星而眠10 分钟前
C++ STL Map容器完全指南:从有序红黑树到无序哈希表
java·开发语言
爱吃牛肉的大老虎1 小时前
Rust对象之结构体,枚举,特性
开发语言·后端·rust
bbq粉刷匠1 小时前
HashMap 底层原理深度拆解(二):putVal 完整链路解析(懒加载 · 链表遍历 · 尾插法)
java·开发语言·哈希算法
@三十一Y2 小时前
C++:红黑树的实现
开发语言·c++
乐观勇敢坚强的老彭2 小时前
C++信奥:开关门、开关灯问题
开发语言·c++·算法
冻柠檬飞冰走茶2 小时前
PTA基础编程题目集 7-31 字符串循环左移(C语言实现)
c语言·开发语言·数据结构·算法
a1117763 小时前
中文优先的企业 RAG 知识库 开源项目
开发语言·开源·kotlin
破z晓3 小时前
javascript 导出excel表
开发语言·javascript·excel
t-think4 小时前
C++类和对象详解(一)
开发语言·c++
西门啐血4 小时前
上位机开发之假装有设备,使用 C# 模拟串口设备
开发语言·mongodb·c#