切线反转数组

时间:2014-07-23 15:59:01

标签: python

我想获得一组数组

的正切
import numpy as np
import math

例如(这是一个数组)

x_value=[1 2 3 4 5 6]
a= abs(x_value-125)

这仍然可以正常工作,但是当我得到一个相反的反转:

b=math.atan(a)

我收到此错误:TypeError:只有length-1数组可以转换为Python标量

我怎样才能解决这个错误,我可以得到数组a的元素的正切?

3 个答案:

答案 0 :(得分:3)

只需使用np.arctan

>>> import numpy as np
>>> a = np.array([1,2,3,4,5,6])
>>> a = abs(a - 125)  # could use np.abs.  It does the same thing, but might be more clear that you expect to get an ndarray instance as a result.
>>> a
array([124, 123, 122, 121, 120, 119])
>>> np.arctan(a)
array([ 1.56273199,  1.56266642,  1.56259979,  1.56253205,  1.56246319,
        1.56239316])

答案 1 :(得分:1)

您可以使用列表推导将atan函数应用于数组的每个元素:

a = np.abs(np.array([1,2,3,4,5,6]) - 125)
b = [np.math.atan(x) for x in a]

答案 2 :(得分:0)

您可以使用列表理解:

b = [math.atan(ele) for ele in a]