前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【数据挖掘】任务1:距离计算

【数据挖掘】任务1:距离计算

作者头像
zstar
发布2022-09-01 16:30:46
5740
发布2022-09-01 16:30:46
举报
文章被收录于专栏:往期博文往期博文

题目

给定两个被元组(22,1,42,10)和(20,0,36,8)表示的对象

(a)计算这两个对象之间的欧几里得距离;

(b)计算这两个对象之间的曼哈顿距离;

(c)使用q=3,计算这两个对象之间的闵可夫斯基距离

(d)计算着两个对象之间的上确界距离

创建对象

代码语言:javascript
复制
a = (22, 1, 42, 10)
b = (20, 0, 36, 8)

欧氏距离

在这里插入图片描述
在这里插入图片描述
代码语言:javascript
复制
import numpy as np


def euclidean(x, y):
    return np.sqrt(sum((x[i] - y[i]) ** 2 for i in range(len(x))))
代码语言:javascript
复制
euclidean(a, b)
代码语言:javascript
复制
6.708203932499369

曼哈顿距离

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
代码语言:javascript
复制
def manhattan(x, y):
    return sum(np.abs(x[i] - y[i]) for i in range(len(x)))
代码语言:javascript
复制
manhattan(a, b)
代码语言:javascript
复制
11

闵可夫斯基距离

在这里插入图片描述
在这里插入图片描述
代码语言:javascript
复制
def minkowski(x, y, p):
    return sum(np.abs(x[i] - y[i]) ** p for i in range(len(x))) ** (1 / p)
代码语言:javascript
复制
minkowski(a, b, 3)
代码语言:javascript
复制
6.153449493663682

上确界距离

在这里插入图片描述
在这里插入图片描述
代码语言:javascript
复制
def Supremum(x, y):
    return np.abs(max(x) - max(y))
代码语言:javascript
复制
Supremum(a, b)
代码语言:javascript
复制
6
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-07-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 题目
  • 创建对象
  • 欧氏距离
  • 曼哈顿距离
  • 闵可夫斯基距离
  • 上确界距离
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档