I'm trying to write a program that automatically groups similarities between vectors. The vectors are comprised of point coordinates.
For example (assuming X, Y, and Z are numbers):
Data Set 1: [1, 8, X1, X2, 6, X3, X4, 8, 5, 4, 9, 4, Y1, Y2, Y3, Y4, Y5, 1, 5, 7]
Data Set 2: [X1, X2, X3, X4, 6, 3, 5, 4, 3, 6, Y1, Y2, Y3, 7, Y4, Y5, 7, 3, 5, 7]
Data Set 3: [X3, 5, 6, 4, 3, 6, X1, Y3, 3, 5, 6, X4, 2, 6, 7, X2, Y2, 5, 6, X4, Y4]
X1, X2, X3, and X4, and Y1, Y2, Y3, Y4, and Y5 don't match perfectly with each other between Data Set 1 and 2, but they're within very close proximity, and in the same order, unlike the example in Data Set 3.
Is there an algorithm that can do this kind of grouping?