现有excel文件data.xlsx,部分内容如下:
| dt | val |
| 2000/1/1 0:04 | 2339 |
| 2000/1/1 0:08 | 8724 |
| 2000/1/1 0:33 | 8712 |
| 2000/1/1 0:49 | 8748 |
| 2000/1/1 0:52 | 3795 |
| 2000/1/1 0:58 | 8089 |
| 2000/1/1 1:02 | 1205 |
| 2000/1/1 1:07 | 2326 |
| 2000/1/1 1:32 | 9059 |
dt列是时间,val列是数值。每当时间间隔超过 10 分钟,则新分一组,计算各组内val的平均值,部分结果如下:
| dt | avg |
| 2000/1/1 0:04 | 5531.5 |
| 2000/1/1 0:33 | 8712 |
| 2000/1/1 0:49 | 6877.33 |
| 2000/1/1 1:02 | 1765.5 |
| 2000/1/1 1:32 | 4733.25 |
借助集算器可以很方便地完成这件事。可去润乾网站下载集算器职场版,运行时需要一个授权,免费版本就够用。
1. 在集算器中编写脚本avg.dfx:
| A | B | |
| 1 | =file("data.xlsx").xlsimport@t() | /读取Excel文件内容 |
| 2 | >st=A1(1).dt | /设起始时间为st,初始值是第一个dt |
| 3 | =A1.group@i(if(interval@s(st,dt)>600,st=dt,false)) | /分组,若当前的时间与起始时间间隔超过10分钟,则新分一组 |
| 4 | =A3.new(dt:dt,round(~.avg(val),2):avg) | /计算每个分组内的val均值,dt为每组的第一个时间 |
2. 执行脚本,A4是需要计算出的结果 。
这篇博客介绍了如何使用集算器在Excel数据中,通过10分钟时间间隔分组计算val列的平均值。作者指导了从读取data.xlsx到创建avg.dfx脚本的步骤,适合数据处理初学者或需要批量计算的场景。
686

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



