用R语言计较微积分
当前位置:以往代写 > 其他教程 >用R语言计较微积分
2019-06-14

用R语言计较微积分

用R语言计较微积分

R语言是一个优秀的统计计较情况,但它能计较微积分吗?答复是:这个可以有。固然在这方面R比不上Mathmatica或是Matlab,不太巨大的问题仍然能办理。以下图为例,我们但愿计较两个简朴问题,一个是sin函数在x=4处的导数。另一个问题是计较sin(x)在0到pi之间的曲线下面积。
第一个问题用D运算子获得标记运算功效,然儿女入数值即可获得最后功效

dx <- D(expression(sin(x)),’x’)
x <- 4
slope <- eval(dx)

第二个问题可以用integrate函数直接求出数值积分

integrate(function(x) sin(x),0,pi)
数值积分的另一种算法是蒙特卡罗仿真,获得的功效相当靠近
x <- runif(100000,min=0,max=pi)
y <- runif(100000)
pi*sum(y(x))/100000
上面的图形是用ggplot2扩展包绘制的,用到的代码如下:
library(ggplot2)
intercept <- sin(4)-slope*4
x <- seq(from=0,to=2*pi,by=0.01)
y <- sin(x)
p <- ggplot(data.frame(x,y),aes(x,y))
p + geom_area(fill=alpha(‘blue’,0.3))+
geom_abline(intercept=intercept,slope=slope,linetype=2)+
scale_x_continuous(breaks=c(0,pi,2*pi),labels=c(‘0′,expression(pi),expression(2*pi)))+
geom_text(parse=T,aes(x=pi/2,y=0.3,label=’integral(sin(x)*dx, 0, pi)’))+
geom_line()+
geom_point(aes(x=4,y=sin(4)),size=5,colour=alpha(‘red’,0.5))

    关键字:

在线提交作业