计算欧几里得距离

任务描述

本关实现一个函数来计算欧几里得距离。

相关知识

K-means 算法的核心思想是,将数据集中的样本聚类为多个簇集,簇内样本距离较近,簇间样本距离较远。由此可见,其最基本的运算是判断样本(如书籍、电影、用户、汽车等)之间的距离(或者相似度)。

通常数据集中的样本都可描述为一个 n 维向量X(x1​,x2​,⋯,xn​)。每一个维度代表样本的一个属性。比如,对于用户 x 而言,其属性可能是收入、年龄、工作时间等,对于电影而言,其属性可能是出品年份、导演、风格等。本关卡学习欧几里得度量。

欧几里得度量(Euclidean metric)(也称欧氏距离)是一个常用的距离定义,计算 n 维空间中,两个样本点之间的几何距离。

两个在 n 维空间的点X(x1​,x2​,⋯,xn​)和Y(y1​,y2​,⋯,yn​)的欧几里得距离为:

EuclideanDist=i=1∑n​(xi​−yi​)2​

编程要求

本关卡要求你实现函数 euclid_distance,在右侧编辑器 Begin-End 区间补充代码,需要填充的代码块如下:


  
  1. # -*- coding: utf-8 -*-
  2. import numpy as np
  3. def euclid_distance(x1, x2):
  4. """计算两个点之间点欧式距离
  5. 参数:
  6. x1-numpy数组
  7. x2-numpy数组
  8. 返回值:
  9. ret-浮点型数据
  10. """
  11. # 请在此添加实现代码 #
  12. ret = 0
  13. #********** Begin *********#
  14. #********** End ***********#
  15. return ret
测试说明

平台将对你的函数输入两个 Numpy 数组,计算欧式距离,比对函数 euclid_distance 的输出结果与正确结果的差异,只有完全正确才能进入下一关。

代码:

# -*- coding: utf-8 -*-
import numpy as np
def euclid_distance(x1, x2):
    """计算欧几里得距离
    参数:
        x1 - numpy数组
        x2 - numpy数组
    返回值:
        distance - 浮点数,欧几里得距离
    """
    distance = 0
    #   请在此添加实现代码     #
    #********** Begin *********#
    import numpy as np
    distance = np.sqrt(np.sum((x1-x2)**2))
    #********** End ***********#
    return distance

相关推荐

  1. 计算距离

    2024-06-07 12:38:02       32 阅读
  2. 算法

    2024-06-07 12:38:02       52 阅读
  3. 扩展c++

    2024-06-07 12:38:02       29 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-07 12:38:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-07 12:38:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-06-07 12:38:02       82 阅读
  4. Python语言-面向对象

    2024-06-07 12:38:02       91 阅读

热门阅读

  1. Stable Diffusion详解

    2024-06-07 12:38:02       27 阅读
  2. C#实现定时执行任务

    2024-06-07 12:38:02       27 阅读
  3. VBA实战(Excel)(5):介绍一种排列组合算法

    2024-06-07 12:38:02       26 阅读
  4. python常用Web框架介绍

    2024-06-07 12:38:02       22 阅读
  5. mvn 命令报没有配置jdk环境

    2024-06-07 12:38:02       27 阅读