Description Usage Arguments Value Examples
Takes a vector of x values and a corresponding set of postive f(x)=y values, or a function, and evaluates the area under the curve:
\int{f(x)dx}
.
1 |
x |
a sequence of x values. |
fx |
the value of the function to be integrated at x or a function |
n.pts |
the number of points to be used in the integration. If |
A list containing two elements, value
- the value of the
intergral, and cdf
- a list containing elements x and y which give a
numeric specification of the cdf.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | ## integrate the normal density from -3 to 3
x = seq(-3, 3, length = 100)
fx = dnorm(x)
estimate = sintegral(x,fx)$value
true.val = diff(pnorm(c(-3,3)))
abs.error = abs(estimate-true.val)
rel.pct.error = 100*abs(estimate-true.val)/true.val
cat(paste("Absolute error :",round(abs.error,7),"\n"))
cat(paste("Relative percentage error :",round(rel.pct.error,6),"percent\n"))
## repeat the example above using dnorm as function
x = seq(-3, 3, length = 100)
estimate = sintegral(x,dnorm)$value
true.val = diff(pnorm(c(-3,3)))
abs.error = abs(estimate-true.val)
rel.pct.error = 100*abs(estimate-true.val)/true.val
cat(paste("Absolute error :",round(abs.error,7),"\n"))
cat(paste("Relative percentage error :",round(rel.pct.error,6)," percent\n"))
## use the cdf
cdf = sintegral(x,dnorm)$cdf
plot(cdf, type = 'l', col = "black")
lines(x, pnorm(x), col = "red", lty = 2)
## integrate the function x^2-1 over the range 1-2
x = seq(1,2,length = 100)
sintegral(x,function(x){x^2-1})$value
## compare to integrate
integrate(function(x){x^2-1},1,2)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.