library(mosaicCalc)
## Loading required package: mosaic
## Registered S3 method overwritten by 'mosaic':
##   method                           from   
##   fortify.SpatialPolygonsDataFrame ggplot2
## 
## The 'mosaic' package masks several functions from core packages in order to add 
## additional features.  The original behavior of these functions should not be affected by this.
## 
## Attaching package: 'mosaic'
## The following objects are masked from 'package:dplyr':
## 
##     count, do, tally
## The following object is masked from 'package:Matrix':
## 
##     mean
## The following object is masked from 'package:ggplot2':
## 
##     stat
## The following objects are masked from 'package:stats':
## 
##     binom.test, cor, cor.test, cov, fivenum, IQR, median, prop.test,
##     quantile, sd, t.test, var
## The following objects are masked from 'package:base':
## 
##     max, mean, min, prod, range, sample, sum
## Loading required package: mosaicCore
## 
## Attaching package: 'mosaicCore'
## The following objects are masked from 'package:dplyr':
## 
##     count, tally
## 
## Attaching package: 'mosaicCalc'
## The following object is masked from 'package:stats':
## 
##     D

Fungsi R/mosaic mengambil rumus untuk suatu fungsi dan menghasilkan turunannya. Ini menggunakan jenis ekspresi tilde yang sama yang digunakan oleh atau atau alat R / mosaic lainnya. MisalnyaD()makeFun()contour_plot()

D(t * sin(t) ~ t)
## function (t) 
## sin(t) + t * cos(t)

Jika Anda suka, Anda dapat menggunakan untuk mendefinisikan fungsi, lalu serahkan fungsi itu ke untuk diferensiasi.makeFun()D()

myf <- makeFun(sqrt(y * pnorm(1 + x^2, mean=2, sd=3)) ~ x & y)
dx_myf <- D(myf(x, y) ~ x, y=3)
dx_myf
## function (x, y = 3) 
## {
##     .e1 <- 1 + x^2
##     x * y * dnorm(.e1, 2, 3)/sqrt(y * pnorm(.e1, mean = 2, sd = 3))
## }

Di sisi kanan ekspresi tilde diserahkan ke nama masukan dengan-hormat-untuk. Ini mirip dengan ekspresi tilde yang digunakan dalam plotting, yang menamai input yang membentuk domain grafis. Tapi itu kontras dengan ekspresi tilde di , di mana sisi kanan menentukan urutan di mana Anda ingin input muncul.D()makeFun()

Contoh Tak perlu dikatakan, mengetahui aturan untuk turunan dari fungsi buku pola yang diperkenalkan dalam Bagian 19.3. MisalnyaD()

D(sin(t) ~ t)
## function (t) 
## cos(t)
D(log(x) ~ x)
## function (x) 
## 1/x
D(exp(x) ~ x)
## function (x) 
## exp(x)
D(x^2 ~ x)
## function (x) 
## 2 * x