R中的辐射测量?

时间:2014-01-28 09:56:46

标签: r sin

我想在R中计算以下内容:

SIN(52.517°)

,这应该等于0.79353。但是当我编码时

sin(52.517)

我得到了

0.777119

那我怎么能得到0.79353。我在数学方面不擅长,但我知道有些东西不适用于度数和R中的弧度量。

2 个答案:

答案 0 :(得分:10)

sin上的帮助页面,您可以在R控制台中输入?sin来阅读:

  

角度是弧度,而不是度数(即直角是π/ 2)。

因此,默认情况下,三角函数将弧度视为输入而非度数。要获得sin(52.517),您需要先将这些度数转换为弧度:

52.517 degrees = 52.517 * (pi/180) = sin(52.517*(pi/180)) = 0.916...

如果你这样做:

sin(52.517*(pi/180))

你得到想要的0.7935339。

答案 1 :(得分:5)

它有效

1 degree =0.0174532925 radians
sin(52.517*0.0174532925)
[1] 0.7935339

修改

引自here

 degrees.to.radians<-function(degrees=45,minutes=30)
{
if(!is.numeric(minutes)) stop("Please enter a numeric value for minutes!\n")
if(!is.numeric(degrees)) stop("Please enter a numeric value for degrees!\n")
decimal<-minutes/60
c.num<-degrees+decimal
radians<-c.num*pi/180
radians
}
sin(degrees.to.radians(52.517,0))
[1] 0.7935339