jeudi 29 septembre 2016

Detect and count numerical sequence in Python array

In a numerical sequence (e.g. one-dimensional array) I want to find different patterns of numbers and count each finding separately. However, the numbers can occur repeatedly but only the basic pattern is important.

# Example signal (1d array)
a = np.array([1,1,2,2,2,2,1,1,1,2,1,1,2,3,3,3,3,3,2,2,1,1,1])

# Search for the following patterns: [1,2,1], [1,2,3], [3,2,1] etc. ...

# Count the number of pattern occurrences
# [1,2,1] = 2 (occurs 2 times)
# [1,2,3] = 1 
# [3,2,1] = 1

I tried to solve the problem using np.where() without success. Thank you in advance for any suggestions!

Aucun commentaire:

Enregistrer un commentaire