Программно определять шаблоны в наборе данных?

Есть ли способ программно обнаружить шаблон в наборе данных? Например, если у меня были следующие данные, как я обнаружил, что первый столбец повторяется для каждой шестой строки, а второй столбец повторяется для каждой седьмой строки?

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

Фактические данные намного сложнее, чем это. Я могу использовать PHP или Java. Есть ли библиотека или функция для этого?