numpy.sin函数的度数?

Dan*_*kiy 28 python math trigonometry numpy

我正在研究一个与计算折射角有关的问题.但是,我似乎无法在度数中使用numpy.sin()函数.我试图使用numpy.degrees()和numpy.rad2deg().

numpy.sin(90)

numpy.degrees(numpy.sin(90))
Run Code Online (Sandbox Code Playgroud)

两者分别返回~0.894和~51.2.

谢谢你的帮助.

Bre*_*arn 45

你不想转换度数,因为你已经有了你的数字(90).你需要将90 度度数转换为弧度,你需要采取正弦之前进行:

>>> np.sin(np.deg2rad(90))
1.0
Run Code Online (Sandbox Code Playgroud)

(您可以使用deg2radradians.)


Mal*_*imi 9

使用math标准Python库中的模块:

>>> math.sin(math.radians(90))
Run Code Online (Sandbox Code Playgroud)

  • 一个问题是它没有矢量化,而上面的numpy解决方案是.但是,这取决于你是否正在使用numpy ...... (2认同)
  • 但numpy函数将采用numpy数组并返回一个数组.如果你做了很多数学,你应该看看numpy ...... (2认同)
  • 是的,NumPy 很棒,但有时最好避免依赖关系并使用标准库。^^ (2认同)