java - 以编程方式检测一组数据中的模式?

标签 java php

有没有办法以编程方式检测一组数据中的模式?例如,如果我有以下数据,我如何发现第一列每第 6 行重复一次,第二列每第 7 行重复一次?

2   3
1   1
5   2
4   5
3   7
2   6
1   3
5   1
4   2
3   5
2   7

实际数据远比这复杂。我可以使用 PHP 或 Java。有相关的库或函数吗?

最佳答案

我没有任何方便的引用资料,但对于这些相当简单的模式,您可能会想要 auto correlation 。基本上,您可以看到数组与自身与各种增量的关联程度。它的定义是,+1 表示数字完全相关,0 表示它们彼此“完全”随机,-1 表示它们彼此完全“相反”。

对于 delta = 0,您正在将数据与其自身进行比较,以始终保持完美的相关性

在您的例子中,第一列还将显示一个峰值(接近 1 的数字),增量为 6,第二列的增量为 7。

对于 Java,我会检查 Apache Commons Math library .

关于java - 以编程方式检测一组数据中的模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8958573/

相关文章:

java - volatile 是否会阻塞或涉及上下文切换?

java - 在 setOnLongClickListner 中返回 true

java - 龟兔赛跑小程序,如何才能让我的代码正常工作?

php - 如何使用 nginx 和 php 进行没有 .php 扩展名的路由

php - 如何统计mysql中DATE类型一年重复的次数?

php - MySQLi stmt num_rows 返回 0

java - 检查树是否完整的算法

java - 并行化列表时 Spark 抛出 ArrayIndexOutOfBoundsException

php - # 分钟不活动后自动注销用户

php - Laravel 高 CPU 使用率 - PHP-FPM