在Numpy中,我如何找到给定向量的元素逆(倒数)?

时间:2015-09-16 06:03:32

标签: python numpy

enter image description here

这显示了我的numpy会话。我希望找到给定向量的元素的倒数并将其存储在另一个向量中。 numpy中的功能无济于事。

更新 这对我有用。

numpy.power(x*1.0,-1)

代码示例

import numpy
x = numpy.arange(5) + 1
print (x)
print (numpy.power(x, 2))
print (numpy.power(x, -1))

2 个答案:

答案 0 :(得分:4)

Numpy提供了计算向量reciprocal的函数:

import numpy

x = numpy.arange(5) + 1
print (x)

r = numpy.reciprocal(x.astype(float))
print (r)

提供输出:

[ 1.  2.  3.  4.  5.]
[ 1.          0.5         0.33333333  0.25        0.2       ]

请注意,您的输入方法必须包含浮点数,否则输出向量将转换为整数,您最终会得到:[1 0 0 0 0]

答案 1 :(得分:3)

正如Maciej Lach所述,您的输入方法必须包含浮点数(否则输出将通过numpy.reciprocal方法转换为整数)。但你可以用实现它,即使是整数

1./x

(因为1.是一个浮点数,它会将结果提升为浮点数。)