Open In App

Compute Derivative of an Expression in R Programming - deriv() and D() Function

Last Updated : 30 Jun, 2020
Comments
Improve
Suggest changes
Like Article
Like
Report
In R programming, derivative of a function can be computed using deriv() and D() function. It is used to compute derivatives of simple expressions.
Syntax: deriv(expr, name) D(expr, name) Parameters: expr: represents an expression or a formula with no LHS name: represents character vector to which derivatives will be computed
Example 1: r
# Expression or formula
f = expression(x^2 + 5*x + 1)

# Derivative
cat("Using deriv() function:\n")
print(deriv(f, "x"))

cat("\nUsing D() function:\n")
print(D(f, 'x'))
Output:
Using deriv() function:
expression({
    .value <- x^2 + 5 * x + 1
    .grad <- array(0, c(length(.value), 1L), list(NULL, c("x")))
    .grad[, "x"] <- 2 * x + 5
    attr(.value, "gradient") <- .grad
    .value
})

Using D() function:
2 * x + 5
Example 2: r
# Little harder derivative

# Using deriv() Function
cat("Using deriv() function:\n")
print(deriv(quote(sinpi(x^2)), "x"))

# Using D() Function
cat("\nUsing D() function:\n")
print(D(quote(sinpi(x^2)), "x"))
Output:
Using deriv() function:
expression({
    .expr1 <- x^2
    .value <- sinpi(.expr1)
    .grad <- array(0, c(length(.value), 1L), list(NULL, c("x")))
    .grad[, "x"] <- cospi(.expr1) * (pi * (2 * x))
    attr(.value, "gradient") <- .grad
    .value
})

Using D() function:
cospi(x^2) * (pi * (2 * x))

Next Article
Article Tags :

Similar Reads