我想在R中计算以下内容:
罪(52.517°)
这应该等于0.79353.但是当我编码时
sin(52.517)
Run Code Online (Sandbox Code Playgroud)
我明白了
0.777119
Run Code Online (Sandbox Code Playgroud)
那我怎么能得到0.79353.我不擅长数学,但我知道有些东西不适用于度数和弧度测量.
Mar*_*nov 10
在R控制台中sin输入您可以阅读的帮助页面?sin:
角度是弧度,而不是度数(即,直角是π/ 2).
因此,默认情况下,三角函数将弧度视为输入而不是度.为了得到sin(52.517)你需要首先将这些度数转换为弧度量:
52.517 degrees = 52.517 * (pi/180) = sin(52.517*(pi/180)) = 0.916...
Run Code Online (Sandbox Code Playgroud)
如果你这样做:
sin(52.517*(pi/180))
Run Code Online (Sandbox Code Playgroud)
你得到想要的0.7935339.
有用
1 degree =0.0174532925 radians
sin(52.517*0.0174532925)
[1] 0.7935339
Run Code Online (Sandbox Code Playgroud)
编辑
从这里提到
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
Run Code Online (Sandbox Code Playgroud)