Chapter 13. Beyond Basic Numerics and Statistics
This chapter presents a few advanced techniques such as those you might encounter in the first or second year of a graduate program in applied statistics.
Most of these recipes use functions available in the base distribution. Through add-on packages, R provides some of the world’s most advanced statistical techniques. This is because researchers in statistics now use R as their lingua franca, showcasing their newest work. Anyone looking for a cutting-edge statistical technique is urged to search CRAN and the web for possible implementations.
13.1 Minimizing or Maximizing a Single-Parameter Function
Problem
Given a single-parameter function f
, you want to find the point at
which f
reaches its minimum or maximum.
Solution
To minimize a single-parameter function, use optimize
. Specify the
function to be minimized and the bounds for its domain (x
):
optimize
(
f
,
lower
=
lowerBound
,
upper
=
upperBound
)
If you instead want to maximize the function, specify maximum = TRUE
:
optimize
(
f
,
lower
=
lowerBound
,
upper
=
upperBound
,
maximum
=
TRUE
)
Discussion
The optimize
function can handle functions of one argument. It
requires upper and lower bounds for x
that delimit the region to be
searched. The following example finds the minimum of a polynomial,
3x4 – 2x3 + 3x2 – 4x + 5:
f
<-
function
(
x
)
3
*
x
^
4
-
2
*
x
^
3
+
3
*
x
^
2
-
4
*
x
+
5
optimize
(
f
,
lower
=
-20
,
upper
=
20
)
#> $minimum
#> [1] 0.597
#>
#> $objective
#> [1] 3.64
The returned ...
Get R Cookbook, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.