Ho una matrice di coordinate e vorrei suddividere l'array in due array dipendenti dal valore Y quando c'è un ampio spazio nel valore Y. Questo post: Dividere una matrice in base ai valori dell'array in Python dipende dal valore x, e il metodo che uso è come questo:
array = [[1,5],[3,5],[6,7],[8,7],[25,25],[26,50],.....]
n = len(array)
for i in range(n-1):
if abs(array[i][0] - array[i+1][0]) >= 10:
arr1 = array[:i+1]
arr2 = array[i+1:]
Ho capito che quando voglio dividerlo dipende dal valore di Y, posso solo cambiare:
if abs(array[i][0] - array[i+1][0])
a if abs(array[0][i] - array[0][i+1])
Questo non funziona e ottengo IndexError: list index out of range.
Sono abbastanza nuovo per la programmazione e mi chiedo perché questo non funzioni per trovare un gap nel valore Y quando funziona per trovare il gap nel valore X?
Inoltre, come dovrei andare a dividere l'array in base al valore Y?
Ogni aiuto è molto apprezzato!
risposte:
1 per risposta № 1devi passare a questo:
array = [[1,5],[3,5],[6,7],[8,7],[25,25],[26,50]]
n = len(array)
for i in range(n-1):
if abs(array[i][1] - array[i+1][1]) >= 10:
arr1 = array[:i+1]
arr2 = array[i+1:]