Last data update: 2014.03.03

R: Trapezoidal Integration
trapzR Documentation

Trapezoidal Integration

Description

Compute the area of a function with values 'y' at the points 'x'. Function comes from the pracma package.

Usage

trapz(x, y)

Arguments

x

x-coordinates of points on the x-axis

y

y-coordinates of function values

Value

Approximated integral of the function from 'min(x)' to 'max(x)'. Or a matrix of the same size as 'y'.

Examples


# Calculate the area under the sine curve from 0 to pi:
 n <- 101
 x <- seq(0, pi, len = n)
 y <- sin(x)
 trapz(x, y)          #=> 1.999835504

# Use a correction term at the boundary: -h^2/12*(f'(b)-f'(a))
 h  <- x[2] - x[1]
 ca <- (y[2]-y[1]) / h
 cb <- (y[n]-y[n-1]) / h
 trapz(x, y) - h^2/12 * (cb - ca)  #=> 1.999999969

Results


R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> library(metagenomeSeq)
Loading required package: Biobase
Loading required package: BiocGenerics
Loading required package: parallel

Attaching package: 'BiocGenerics'

The following objects are masked from 'package:parallel':

    clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
    clusterExport, clusterMap, parApply, parCapply, parLapply,
    parLapplyLB, parRapply, parSapply, parSapplyLB

The following objects are masked from 'package:stats':

    IQR, mad, xtabs

The following objects are masked from 'package:base':

    Filter, Find, Map, Position, Reduce, anyDuplicated, append,
    as.data.frame, cbind, colnames, do.call, duplicated, eval, evalq,
    get, grep, grepl, intersect, is.unsorted, lapply, lengths, mapply,
    match, mget, order, paste, pmax, pmax.int, pmin, pmin.int, rank,
    rbind, rownames, sapply, setdiff, sort, table, tapply, union,
    unique, unsplit

Welcome to Bioconductor

    Vignettes contain introductory material; view with
    'browseVignettes()'. To cite Bioconductor, see
    'citation("Biobase")', and for packages 'citation("pkgname")'.

Loading required package: limma

Attaching package: 'limma'

The following object is masked from 'package:BiocGenerics':

    plotMA

Loading required package: glmnet
Loading required package: Matrix
Loading required package: foreach
Loaded glmnet 2.0-5

Loading required package: RColorBrewer
> png(filename="/home/ddbj/snapshot/RGM3/R_BC/result/metagenomeSeq/trapz.Rd_%03d_medium.png", width=480, height=480)
> ### Name: trapz
> ### Title: Trapezoidal Integration
> ### Aliases: trapz
> 
> ### ** Examples
> 
> 
> # Calculate the area under the sine curve from 0 to pi:
>  n <- 101
>  x <- seq(0, pi, len = n)
>  y <- sin(x)
>  trapz(x, y)          #=> 1.999835504
[1] 1.999836
> 
> # Use a correction term at the boundary: -h^2/12*(f'(b)-f'(a))
>  h  <- x[2] - x[1]
>  ca <- (y[2]-y[1]) / h
>  cb <- (y[n]-y[n-1]) / h
>  trapz(x, y) - h^2/12 * (cb - ca)  #=> 1.999999969
[1] 2
> 
> 
> 
> 
> 
> 
> dev.off()
null device 
          1 
>