R语言的导数计算

求导通用法则
(u/v)'=(u'v-uv')/v^2

(uv)'=u'v+uv'

(cu)'=cu'

(u+v)'=u'+v'

dy/dt=dy/dx*dx/dt

D_{n}x_{n}=n!

一元初等函数的导数计算公式 

函数          原函数            导函数
常数函数      y=C               y'=0
幂函数        y=x^n             y'=n*x^(n-1)
指数函数      y=a^x             y'=a^x*ln(a)
              y=exp(1)^x        y'=exp(1)^x
对数函数      y=log(x,base=a)   y'=1/(x*ln(a)) (a>0,且a!=1,x>0)
              y=ln(x)           y'=1/x
正弦函数      y=sin(x)          y'=cos(x)
余弦函数      y=cos(x)          y'=-sin(x)
正切函数      y=tan(x)          y'=sec(x)^2=1/cos(x)^2
余切函数      y=cot(x)          y'=-csc(x)^2=1/sin(x)^2
正割函数      y=sec(x)          y'=sec(x)*tan(x)
余割函数      y=csc(x)          y'=-csc(x)*cot(x)
反正弦函数    y=arcsin(x)       y'=1/sqrt(1-x^2)
反余弦函数    y=arccos(x)       y'=-1/sqrt(1-x^2)
反正切函数    y=arctan(x)       y'=1/(1+x^2)
反余切函数    y=arccot(x)       y'=-1/(1+x^2)
反正割函数    y=arcsec(x)       y'=1/abs(x)*(x^2-1)
反余割函数    y=arccsc(x)       y'=-1/abs(x)*(x^2-1)



1、stats包
dx <- deriv(y~x^3,"x")
x<-1:2  #给自变量x赋值
eval(dx) #运行求导计算

deriv(expr, name)函数时通常要传2个参数,第一参数expr就是原函数公式,用~号来分隔公式的两边,第二参数name用于指定函数的自变量。deriv()函数会返回一个表达式expression类型变量,再用eval()函数运行这个表达式得到就可得到计算结果。希望以函数的形式调用计算公式,那么你还需要传第三个参数func,并让func参数为TRUE

dx <- deriv(y~(sin(x))^10,"x",func=T)  # 生成导数公式的调用函数
dx(4)   # 以参数作为自变量,进行函数调用

dx<-deriv3(y~A*x^2,"x",func = TRUE) #二阶导数

2、mosaic包
library(mosaic)
D(sin(x) ~ x)  #sinx求导,D()屏蔽了stats包中的D()
D(A * x^2~ x + x) #A*x的2次方的二阶导数
y <- D((sin(x))^10 ~ x) # (sinx)10次方求导
y(4)

单变量定积分

stats包
integrate(dnorm, -1.96, 1.96)
integrate(dnorm, -Inf, Inf)

## 自定义函数
integrand <- function(x) {1/((x+1)*sqrt(x))}
integrate(integrand, lower = 0, upper = Inf)



评论

此博客中的热门博文

V2ray websocket(ws)+tls+nginx分流

Rstudio 使用代理