正交检查;数学或函数用法不正确?

时间:2018-11-08 13:57:47

标签: math scipy

我正在比较2个角度(以度为单位),我想知道它们是否正交。

因此,我使用以下Skype or TeamViewer函数:

if (options.OpenCloseOverridesOptions != null && !options.OpenCloseOverridesOptions.AreEqual(OpenCloseOverridesOptions))
            return false;

        if (options.DeliveryOpenCloseOverridesOptions != null && !options.DeliveryOpenCloseOverridesOptions.AreEqual(DeliveryOpenCloseOverridesOptions))
            return false;

        if (options.PickupOpenCloseOverridesOptions != null && !options.PickupOpenCloseOverridesOptions.AreEqual(PickupOpenCloseOverridesOptions))
            return false;

        if (options.PickupServiceWindowOverridesOptions != null && !options.PickupServiceWindowOverridesOptions.AreEqual(PickupServiceWindowOverridesOptions))
            return false;

        if (options.DeliveryServiceWindowOverridesOptions != null && !options.DeliveryServiceWindowOverridesOptions.AreEqual(DeliveryServiceWindowOverridesOptions))
            return false;

        if (options.ServiceWindowOverridesOptions != null && !options.ServiceWindowOverridesOptions.AreEqual(ServiceWindowOverridesOptions))
            return false;

        if (options.LineItemsOptions != null && !options.LineItemsOptions.AreEqual(LineItemsOptions))
            return false;

但是它会打印出scipy.spatial.distance。这个结果不应该给我print( dist.cosine([181], [1]) ) 还是0.0吗?即,其方向相反?我使用的功能是否错误?

1 个答案:

答案 0 :(得分:1)

dist.cosine actually computes the cosine distance,(维基百科)是

  

通常用于正数空间中的补码,即:

     

D C (A,B)= 1-S C (A,B)

     

其中D C 是余弦距离,而S C 是余弦距离   余弦相似度。

这根本不是您想要的。我不是Python专家,但不是

math.cos(math.radians(181 - 1))

你想做什么?