In this second lesson of our interactive control flow, iteration, and functions course, you'll learn about functions and functional programming in R.

Specifically, we'll break down the components of a function. Then, you'll start working with and writing your own R functions as you practice using and build understanding of things like default arguments, how to use multiple inputs with an R function, how to use nested functions, and more.

You'll also learn to build your own custom functions in R, which can make coding and data processing tasks significantly more efficient and prevent you from writing the same code over and over again.

After you finish this lesson, you will be comfortable with functions and functional programming in R, and you'll be able to write your own functions.

#### Objectives

#### Lesson Outline

- Introduction
- Components of a Function
- Namespaces for Functions
- Using Multiple Inputs
- Default Arguments
- Handling Variable Numbers of Arguments
- Nested Functions
- Next Steps