2016-12-06 11 views
-2

Ich habe ein Problem mit der Pdist-Funktion in Python. Ich habe Koordinaten von Punkten, die ich finden möchte, die Entfernung zwischen ihnen, aber es betrachtet sie nicht als Koordinaten und findet Abstand zwischen zwei Punkten anstatt der Koordinate (sie betrachten Koordinaten als Dezimalzahlen anstatt als Koordinaten). Ich konnte bisher nichts finden, um dieses Problem zu beheben. Jede Hilfe wird geschätzt. Mit anderen Worten, sollte ich irgendeine Transformation meiner Koordinaten vornehmen? Hier ist ein Beispielcode:Den euklidischen Abstand zwischen Koordinaten in Python finden

p1=[39.1653, -86.5264] 
    p2=[39.704166670000049, -86.399444439999826] 
    X=[p1[0],p2[0]] 
    Y=[p1[1],p2[1]] 
    spdist.pdist(zip(X,Y), 'euclidean') 

Das Ergebnis gibt mir 0,55361991 Meilen ist, aber wenn ich die Koordinaten in Google Map setzen, es gib mir 42 Meilen.

Dank

+1

Kannst du deinen Code posten, da du anscheinend etwas geschrieben hast? –

+0

Es ist sehr unklar, was Sie zu tun versuchen, schreiben Sie etwas Code über das, was Sie versucht haben zu tun, einige Beispiele ... – Zafi

+0

Danke. Code zur ursprünglichen Frage hinzugefügt. – Fairy

Antwort

0

Sie Abstand von Dezimal-Koordinaten berechnen kann, wenn man die Formel kennen, beteiligt ist. Es gibt einen für rectangular coordinate systems; ein anderes für spherical coordinate systems.

Wenn die eingebaute Python-Funktion Punktparameter aufnimmt, warum sollten Sie Ihre Dezimalwerte nicht als Punkte umbrechen, bevor Sie die Funktion aufrufen?

+0

Vielen Dank für den Kommentar, aber ich verstehe nicht genau, was Sie meinten. Ich habe der Frage einen Code hinzugefügt. Könnten Sie mir bitte einen Hinweis darauf geben? – Fairy

+0

Diese sehen wie lat/lon Werte aus. Diese werden nicht in einem euklidischen Raum berechnet; Diese befinden sich in einem Koordinatensystem der Kugelförmigen Erde mit einem Radius von 3.959 Meilen. – duffymo

+0

Sollte ich in diesem Fall eine Transformation durchführen, damit ich die euklidische Entfernung in Python verwenden kann? – Fairy

Verwandte Themen