Related Articles

Related Articles

Compute Derivative of an Expression in R Programming – deriv() and D() Function
  • Last Updated : 30 Jun, 2020

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:

filter_none

edit
close

play_arrow

link
brightness_4
code

# 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'))

chevron_right


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:

filter_none

edit
close

play_arrow

link
brightness_4
code

# 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"))

chevron_right


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))
My Personal Notes arrow_drop_up
Recommended Articles
Page :