[英]Wrong Euclidean distance H2O calculations R
我使用 H2O 和 R 来计算 2 个 data.frames 之间的欧几里德距离:
set.seed(121)
#create the data
df1<-data.frame(matrix(rnorm(1000),ncol=10))
df2<-data.frame(matrix(rnorm(300),ncol=10))
#init h2o
h2o.init()
#transform to h2o
df1.h<-as.h2o(df1)
df2.h<-as.h2o(df2)
如果我使用正常计算,即第一行:
distance1<-sqrt(sum((df1[1,]-df2[1,])^2))
如果我使用 H2O 库:
distance.h2o<-h2o.distance(df1.h[1,],df2.h[1,],"l2")
print(distance1)
print(distance.h2o)
distance1 和 distance.h2o 不一样。 有人知道为什么吗? 谢谢!!
好像h2o.distance
计算平方和,没有取平方根:所以取平方根就可以得到标准结果。
distance.h2o <- h2o.distance(df1.h[1,],df2.h[1,],"l2")
sqrt(distance.h2o)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.