2014-06-16 2 views
2

Je latitude et la longitude en deux tableaux distincts:Tous les points possibles (latitude, longitude) de coordonnées latitude/longitude dans des tableaux distincts

a = np.array([71,75]) 
b = np.array([43,42]) 

Comment puis-je trouver facilement tous les points possibles composés de ces coordonnées?

J'ai été déconner avec itertools.combinations:

In [43]: 

list(itertools.combinations(np.concatenate([a,b]), r=2)) 

Out[43]: 

[(71, 75), (71, 43), (71, 42), (75, 43), (75, 42), (43, 42)] 

mais cela ne fonctionne pas pour moi parce que les points (71,75) et (43,42) sont la latitude/latitude et la longitude paires/longitude.

Ce que je voudrais avoir est la suivante:

Out[43]: 

    [(71, 43), (71, 42), (75, 43), (75, 42)] 

Les tableaux a et b seront éventuellement d'une plus grande taille, mais Resteront la même taille que ce sont des paires latitude/longitude.

+1

La fin de votre question est moins claire. Pouvez-vous donner quelques exemples de ce que vous attendez? – daouzli

+0

duplication possible de [Utilisation de numpy pour construire un tableau de toutes les combinaisons de deux tableaux] (http://stackoverflow.com/questions/1208118/using-numpy-to-build-an-array-of-all-combinations-of -two-arrays) – huon

Répondre

5

Qu'est-ce que vous voulez est itertools.product():

list(product(a, b)) 
#[(71, 43), (71, 42), (75, 43), (75, 42)] 
+0

C'est exactement ce que je cherchais! – pbreach

0

Il suffit de faire deux pour les boucles qui sont imbriquées et vont sur les deux tableaux for i=0 to len(a) do for j=0 to len(b) do out.add(coordinate(a[i],b[j]);

+0

Je ne suis pas sûr de comprendre cette réponse. Que fait la fonction de coordonnées et d'où vient-elle? – pbreach

+1

Je crois que vous n'avez besoin d'aucune fonction 'coordinate', faites seulement un [a], b [j]' un tuple ou une liste et 'append' (pas' add') à 'out'. – heltonbiker

+0

Je viens de créer une classe appelée "coordonner", ce que @heltonbiker a dit est une bonne idée. –

Questions connexes