当前位置: 首页 > news >正文

java对时间序列每x秒进行分组

问题:将一个时间序列每5秒分一组,返回嵌套的list;
原理:int除int会得到一个int(也就是损失精度)
输入:排序后的list,每几秒分组值

    private static List<List<Long>> getSerialSlice(List<Long> serialList, long values) {return new ArrayList<>(serialList.stream().collect(Collectors.groupingBy(timestamp -> timestamp/ values)).values());}

测试:

    public static void main(String[] args) {List<Long> list = new ArrayList<>();list.add(1800000L);list.add(1801000L);list.add(1802000L);list.add(1803000L);list.add(1804000L);list.add(1805000L);list.add(1807000L);list.add(1808000L);list.add(1810000L);list.add(1813000L);list.add(1816000L);list.add(1817000L);List<List<Long>> slice = getSerialSlice(list, 5000);for (List<Long> longs : slice) {System.out.println("longs = " + longs);}}

结果:
在这里插入图片描述
ps:有人就想要12345为一组,而不要01234为一组,也可以:

    private static List<List<Long>> getSerialSlice(List<Long> serialList, long values) {return new ArrayList<>(serialList.stream().collect(Collectors.groupingBy(timestamp -> (timestamp-1000)/ values)).values());}
http://www.lryc.cn/news/145625.html

相关文章:

  • 八月更新 | CI 构建计划触发机制升级、制品扫描 SBOM 分析功能上线!
  • Spring核心配置步骤-完全基于XML的配置
  • 宏基官网下载的驱动怎么安装(宏基笔记本如何安装系统)
  • 基于AVR128单片机抢答器proteus仿真设计
  • openGauss学习笔记-54 openGauss 高级特性-MOT
  • InsCode AI 创作助手
  • java对时间序列根据阈值进行连续性分片
  • Pillow:Python的图像处理库(安装与使用教程)
  • 自然语言处理-NLP
  • 柠檬水找零【贪心算法-】
  • el-date-picker设置开始时间小于结束时间
  • Linux内核学习(十三)—— 设备与模块(基于Linux 2.6内核)
  • 计算机视觉工程师学习路线
  • c#多线程—基础概念到“双色球”项目实现(附知识点目录、代码、视频)
  • 【OpenCV入门】第一部分——图像处理基础
  • vue3+ts+tinynce富文本编辑器+htmlDocx+file-saver 配合实现word下载
  • 论文阅读 The Power of Tiling for Small Object Detection
  • 【FreeRTOS】【应用篇】消息队列【下篇】
  • 芯片技术的崭新时代:探索未来的可能性
  • 博流RISC-V芯片Eclipse环境搭建
  • 智慧水产养殖方案,守护养殖水产品安全!
  • 前端vue引入高德地图入门教程
  • 【LeetCode题目详解】第八章 贪心算法 part05 435. 无重叠区间 763.划分字母区间 56. 合并区间 (day36补)
  • 数据的语言:学习数据可视化的实际应用
  • 【Flutter】Flutter简介
  • 做区块链卡牌游戏有什么好处?
  • C语言每日一练------Day(5)
  • (Windows )本地连接远程服务器(Linux),免密码登录设置
  • Python 面试:异常处理机制
  • Matlab图像处理-水平镜像