例题描述
Excel文件book1.xlsx中有各年月的水表用水量数据,部分数据如下图所示数据:

另有每年的漏水量统计表leakage.xlsx如下图所示:

现在需要把每年的漏水量按照各年月用水量占当年总用水量的比例,按漏水量分配到各年月的Water leakage列。
编写SPL脚本:
| A | |
| 1 | =T("E:/work/book1.xlsx") |
| 2 | =T("E:/work/leakage.xlsx") |
| 3 | =A1.group(Year) |
| 4 | =A3.run(a=A2.select@1(Year==A3.Year).'Water leakage',s=~.sum(Water),~.run('Water leakage'=Water*a/s)) |
| 5 | =T("E:/work/book2.xlsx",A1) |
A1 读出book1.xlsx文件数据
A2 读出leakage.xlsx文件数据
A3 将A1数据按照Year分组
A4 循环A3中的各组,变量a是从A2中选出对应年份的漏水损失,变量s是本年度总的Water用水量,然后循环本年度所有记录,给Water leakage列赋值为:Water*a/s。
A5 把A1保存到文件book2.xlsx
686

被折叠的 条评论
为什么被折叠?



