Link Search Menu Expand Document (external link)

How to compute the derivative of a function (in R)

See all solutions.

Task

Given a mathematical function f(x), we write f(x) or ddxf(x) to represent its derivative, or the rate of change of f with respect to x. How can we compute f(x) using mathematical software?

Solution

Let’s consider the function f(x)=10x216x+1. We focus not on the whole function, but just the expression on the right-hand side, 10x216x+1.

1
formula <- expression( 10*x^2 - 16*x + 1 )

We can compute its derivative using the D function.

1
D( formula, "x" )   # derivative with respect to x
10 * (2 * x) - 16

R does not simplify the output, but if we do so ourselves, we find that f(x)=20x16.

If it had been a multi-variable function, we would need to specify the variable with respect to which we wanted to compute a derivative.

1
2
formula2 <- expression( x^2-y^2 )  # consider the formula x^2 - y^2
D( formula2, "y" )                 # differentiate with respect to y
-(2 * y)

That output says that y(x2y2)=2y.

We can compute the second derivative by using the D function twice and specifying the variables with respect to which we are computing the derivative.

1
D( D( formula2, "x" ), "x" )  # second derivative with respect to x
[1] 2
1
D( D( formula2, "x" ), "y" )  # mixed partial derivative
[1] 0

Content last modified on 24 July 2023.

See a problem? Tell us or edit the source.

Contributed by Debayan Sen (DSEN@bentley.edu)