Lyn*_*ite 5 python duck-typing numpy
我最近升级到numpy 1.9dev.(用于改进OpenBlas支持).
我有一些代码可以做出x-y
Where x和y来自概率分布的样本.如果分布是伯努利,则它们是布尔值.如果分布是高斯分布,则它们是浮点数.
在哪里取决于所遵循的路径x,y
可能是bools或浮动.我不必关心python有鸭子打字.如果可以减去那么它是一个有效的价值x和y
我收到这个警告:
DeprecationWarning:
-不推荐使用numpy boolean subtract(二元运算符),而是使用bitwise_xor(^运算符)或logical_xor函数.
我已经把它警告消失了,把它变成了一个漂浮物.这可能是一件好事,因为它使代码在较低级别更加一致.(不作为好东西出售).
采取什么样的正确行动?我不能使用布尔或按位xor作为何时x和y浮动,这将打破.这将是丑作出的类型的代码分支x和y.
也许你应该这样做:
x=x.astype(numpy.float32)
y=y.astype(numpy.float32)
Run Code Online (Sandbox Code Playgroud)
然后
x - y
Run Code Online (Sandbox Code Playgroud)
至少,它适用于我的情况.