Python Tutorial

Python Flow Control

Python Functions

Python Data Types

Python Date and Time

Python Files

Python String

Python List

Python Dictionary

Python Variable

Python Input/Output

Python Exceptions

Python Advanced

How to calculate Euclidean distance of two points in Python

To calculate the Euclidean distance between two points in Python, you can use the Pythagorean theorem, which states that the Euclidean distance between two points in a Euclidean plane is the square root of the sum of the squares of the differences between their coordinates. For two points (x1, y1) and (x2, y2), the Euclidean distance is calculated as:

distance = sqrt((x2 - x1)^2 + (y2 - y1)^2)

Here's an example of how to calculate the Euclidean distance between two points using Python:

import math

def euclidean_distance(point1, point2):
    return math.sqrt((point2[0] - point1[0])**2 + (point2[1] - point1[1])**2)

point1 = (1, 2)
point2 = (4, 6)

distance = euclidean_distance(point1, point2)
print("Euclidean distance:", distance)
# Output: Euclidean distance: 5.0

In this example, we define a function euclidean_distance() that takes two points as tuples and calculates the Euclidean distance between them using the Pythagorean theorem. We then call the function with two points and print the result.

For higher-dimensional points, you can modify the function to handle any number of dimensions:

import math

def euclidean_distance(point1, point2):
    if len(point1) != len(point2):
        raise ValueError("Points must have the same number of dimensions")
        
    return math.sqrt(sum((coord2 - coord1)**2 for coord1, coord2 in zip(point1, point2)))

point1 = (1, 2, 3)
point2 = (4, 6, 9)

distance = euclidean_distance(point1, point2)
print("Euclidean distance:", distance)
# Output: Euclidean distance: 7.0710678118654755

In this modified function, we first check if the points have the same number of dimensions. Then, we use a list comprehension with zip() to calculate the sum of the squares of the differences between the coordinates, and math.sqrt() to calculate the square root of the sum.

  1. Calculate Euclidean Distance Between Two Points:

    def euclidean_distance(point1, point2):
        return ((point1[0] - point2[0]) ** 2 + (point1[1] - point2[1]) ** 2) ** 0.5
    
    point_a = (1, 2)
    point_b = (4, 6)
    
    distance = euclidean_distance(point_a, point_b)
    
    print(f"Point A: {point_a}")
    print(f"Point B: {point_b}")
    print(f"Euclidean Distance: {distance}")
    
  2. Euclidean Distance Formula in Python:

    def euclidean_distance(point1, point2):
        return ((point1[0] - point2[0]) ** 2 + (point1[1] - point2[1]) ** 2) ** 0.5
    
    point_a = (1, 2)
    point_b = (4, 6)
    
    distance = euclidean_distance(point_a, point_b)
    
    print(f"Point A: {point_a}")
    print(f"Point B: {point_b}")
    print(f"Euclidean Distance: {distance}")
    
  3. Calculate Distance Between Two Points Using Math Module in Python:

    from math import dist
    
    point_a = (1, 2)
    point_b = (4, 6)
    
    distance = dist(point_a, point_b)
    
    print(f"Point A: {point_a}")
    print(f"Point B: {point_b}")
    print(f"Euclidean Distance: {distance}")
    
  4. Python Distance Calculation for 2D Points:

    from math import sqrt
    
    point_a = (1, 2)
    point_b = (4, 6)
    
    distance = sqrt((point_a[0] - point_b[0]) ** 2 + (point_a[1] - point_b[1]) ** 2)
    
    print(f"Point A: {point_a}")
    print(f"Point B: {point_b}")
    print(f"Euclidean Distance: {distance}")
    
  5. Euclidean Distance Between Two Points Numpy Python:

    import numpy as np
    
    point_a = np.array([1, 2])
    point_b = np.array([4, 6])
    
    distance = np.linalg.norm(point_a - point_b)
    
    print(f"Point A: {point_a}")
    print(f"Point B: {point_b}")
    print(f"Euclidean Distance: {distance}")
    
  6. Python Scipy Library for Euclidean Distance Calculation:

    from scipy.spatial import distance
    
    point_a = (1, 2)
    point_b = (4, 6)
    
    distance_value = distance.euclidean(point_a, point_b)
    
    print(f"Point A: {point_a}")
    print(f"Point B: {point_b}")
    print(f"Euclidean Distance: {distance_value}")
    
  7. Calculate 3D Euclidean Distance in Python:

    from math import sqrt
    
    point_a = (1, 2, 3)
    point_b = (4, 6, 8)
    
    distance = sqrt((point_a[0] - point_b[0]) ** 2 + (point_a[1] - point_b[1]) ** 2 + (point_a[2] - point_b[2]) ** 2)
    
    print(f"Point A: {point_a}")
    print(f"Point B: {point_b}")
    print(f"3D Euclidean Distance: {distance}")
    
  8. Euclidean Distance Calculation Using NumPy Arrays in Python:

    import numpy as np
    
    point_a = np.array([1, 2, 3])
    point_b = np.array([4, 6, 8])
    
    distance = np.linalg.norm(point_a - point_b)
    
    print(f"Point A: {point_a}")
    print(f"Point B: {point_b}")
    print(f"3D Euclidean Distance: {distance}")
    
  9. Python math.dist for Euclidean Distance:

    from math import dist
    
    point_a = (1, 2, 3)
    point_b = (4, 6, 8)
    
    distance = dist(point_a, point_b)
    
    print(f"Point A: {point_a}")
    print(f"Point B: {point_b}")
    print(f"3D Euclidean Distance: {distance}")
    
  10. Calculate Distance Between Two Coordinates in Python:

    from geopy.distance import geodesic
    
    coord_a = (40.7128, -74.0060)  # New York City
    coord_b = (34.0522, -118.2437)  # Los Angeles
    
    distance = geodesic(coord_a, coord_b).kilometers
    
    print(f"Coordinate A: {coord_a}")
    print(f"Coordinate B: {coord_b}")
    print(f"Geodesic Distance: {distance} km")
    
  11. Efficient Ways to Compute Euclidean Distance in Python:

    from math import sqrt
    
    def euclidean_distance(point1, point2):
        return sqrt(sum((a - b) ** 2 for a, b in zip(point1, point2)))
    
    point_a = (1, 2, 3)
    point_b = (4, 6, 8)
    
    distance = euclidean_distance(point_a, point_b)
    
    print(f"Point A: {point_a}")
    print(f"Point B: {point_b}")
    print(f"3D Euclidean Distance: {distance}")
    
  12. Euclidean Distance Function in Python:

    def euclidean_distance(point1, point2):
        return ((point1[0] - point2[0]) ** 2 + (point1[1] - point2[1]) ** 2) ** 0.5
    
    point_a = (1, 2)
    point_b = (4, 6)
    
    distance = euclidean_distance(point_a, point_b)
    
    print(f"Point A: {point_a}")
    print(f"Point B: {point_b}")
    print(f"Euclidean Distance: {distance}")
    
  13. Python Distance Formula for Multiple Dimensions:

    def euclidean_distance(point1, point2):
        return sqrt(sum((a - b) ** 2 for a, b in zip(point1, point2)))
    
    point_a = (1, 2, 3)
    point_b = (4, 6, 8)
    
    distance = euclidean_distance(point_a, point_b)
    
    print(f"Point A: {point_a}")
    print(f"Point B: {point_b}")
    print(f"3D Euclidean Distance: {distance}")
    
  14. Vectorized Euclidean Distance Calculation in Python:

    import numpy as np
    
    def euclidean_distance(point1, point2):
        return np.linalg.norm(np.array(point1) - np.array(point2))
    
    point_a = [1, 2, 3]
    point_b = [4, 6, 8]
    
    distance = euclidean_distance(point_a, point_b)
    
    print(f"Point A: {point_a}")
    print(f"Point B: {point_b}")
    print(f"3D Euclidean Distance: {distance}")
    
  15. Implementing Euclidean Distance in a Class in Python:

    class EuclideanDistance:
        def calculate(self, point1, point2):
            return sqrt(sum((a - b) ** 2 for a, b in zip(point1, point2)))
    
    distance_calculator = EuclideanDistance()
    point_a = (1, 2, 3)
    point_b = (4, 6, 8)
    
    distance = distance_calculator.calculate(point_a, point_b)
    
    print(f"Point A: {point_a}")
    print(f"Point B: {point_b}")
    print(f"3D Euclidean Distance: {distance}")
    
  16. Euclidean Distance Between Data Points in Python:

    from sklearn.metrics.pairwise import euclidean_distances
    
    data_points = [[1, 2, 3], [4, 6, 8], [2, 4, 6]]
    
    distances = euclidean_distances(data_points)
    
    print("Data Points:")
    for point in data_points:
        print(point)
    
    print("Euclidean Distances:")
    for row in distances:
        print(row)
    
  17. Using NumPy Broadcasting for Euclidean Distance in Python:

    import numpy as np
    
    def euclidean_distance_matrix(points):
        return np.sqrt(np.sum((points[:, np.newaxis, :] - points) ** 2, axis=2))
    
    data_points = np.array([[1, 2, 3], [4, 6, 8], [2, 4, 6]])
    
    distances = euclidean_distance_matrix(data_points)
    
    print("Data Points:")
    print(data_points)
    
    print("Euclidean Distances:")
    print(distances)
    
  18. Python Pandas for Euclidean Distance Computation:

    import pandas as pd
    from scipy.spatial.distance import cdist
    
    data = {'X': [1, 4, 2], 'Y': [2, 6, 4]}
    df = pd.DataFrame(data)
    
    distance_matrix = cdist(df.values, df.values)
    
    print("Data Points:")
    print(df)
    
    print("Euclidean Distance Matrix:")
    print(distance_matrix)
    
  19. Euclidean Distance Between Points in a List in Python:

    from scipy.spatial.distance import euclidean
    
    points = [(1, 2), (4, 6), (2, 4)]
    
    distances = [[euclidean(p1, p2) for p2 in points] for p1 in points]
    
    print("Data Points:")
    for point in points:
        print(point)
    
    print("Euclidean Distances:")
    for row in distances:
        print(row)
    
  20. Compare Different Methods to Calculate Euclidean Distance in Python:

    from timeit import timeit
    import numpy as np
    
    def euclidean_distance(point1, point2):
        return np.linalg.norm(np.array(point1) - np.array(point2))
    
    point_a = (1, 2, 3)
    point_b = (4, 6, 8)
    
    def method1():
        return sqrt(sum((a - b) ** 2 for a, b in zip(point_a, point_b)))
    
    def method2():
        return np.linalg.norm(np.array(point_a) - np.array(point_b))
    
    def method3():
        return np.sqrt(np.sum((np.array(point_a) - np.array(point_b)) ** 2))
    
    print("Comparison of Methods:")
    print("Method 1:", timeit(method1, number=1000000))
    print("Method 2:", timeit(method2, number=1000000, setup="import numpy as np"))
    print("Method 3:", timeit(method3, number=1000000, setup="import numpy as np"))