c语言数组求欧几里得距离,如何计算由包含x,y的矩阵定义的两点之间的欧几里得距离?...

我在欧氏距离计算中很丢失.我发现函数dist2 {SpatialTools}或rdist {fields}来执行此操作,但它们不能按预期工作.

我想一个点在carthesian系统中有两个坐标,所以[x,y].

要测量2个点之间的距离(由行定义),我需要2个点的4个坐标,所以

A点:[x1,y1]

B点:[x2,y2]

积分协调:

A[0,1]

B[0,0]

C[1,1]

D[1,1]

我有两个矩阵:x1(A和C在那里,由行定义)和x2(包含B和D).写在矩阵中:

library("SpatialTools")

x1

x2

所以我得到了

> x1

[,1] [,2]

[1,] 0 1 #(as xy coordinates of A point)

[2,] 1 1 #(same for C point)

> x2

[,1] [,2]

[1,] 0 0 #(same for B point)

[2,] 1 1 #(same for D point)

计算欧几里德之间的距离

A B # same as x1[1,] x2[1,]

C D # same as x1[2,] x2[2,]

我假设获得EuclidDist:

> x1 x2 EuclidDist

[,1] [,2] [,1] [,2]

[1,] 0 1 #A [1,] 0 0 #B 1

[2,] 1 1 #B [2,] 1 1 #D 0

我想获得由[x,y]坐标识别的两点之间的距离矢量,但是,使用dist2我得到一个矩阵:

> dist2(x1,x2)

[,1] [,2]

[1,] 1.000000 1

[2,] 1.414214 0

我的问题是,哪个数字描述了这个矩阵中A-B和C-D之间真正的欧几里德距离?我误会了什么吗?非常感谢你的每一条建议或任何解释.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值