- An
`if`

statement tells R to do a certain task for a certain case. - In English, you would say “If <condition> is true, do <steps>!”
- In R, you would say:

if (condition) { step1 step2 ... }

`if`

Statement- An
`if`

statement tells R to do a certain task for a certain case. - In English, you would say “If <condition> is true, do <steps>!”
- In R, you would say:

if (condition) { step1 step2 ... }

`if`

Statement`condition`

object should be a logical statement/test or an R expression that evaluates to a**single**`TRUE`

or`FALSE`

.- If
`condition`

is`TRUE`

,- R will run all the code that appears between the curly brackets
`{}`

following the`if`

statement.

- R will run all the code that appears between the curly brackets
- If
`condition`

is`FALSE`

,- R will skip the code between the curly brackets without running it.

`if`

StatementBelow is an example of an `if`

statement to make sure a number `num`

is positive.

if (num < 0) { num <- num * -1 }

`if`

Statement- In the case,
`num < 0`

is`TRUE`

:

num <- -2 if (num < 0) { num <- num * -1 } num

## [1] 2

`if`

Statement- In the case,
`num < 0`

is`FALSE`

:

num <- 4 if (num < 0) { num <- num * -1 } num

## [1] 4

- What will the following code return?

x <- 1 if (3 == 3) { x <- 2 } x

- What will the following code return?

x <- 1 if (3 == 3) { x <- 2 } x

## [1] 2

- What will the following code return?

x <- 1 if (TRUE) { x <- 2 } x

- What will the following code return?

x <- 1 if (TRUE) { x <- 2 } x

## [1] 2

- What will the following code return?

x <- 1 if (x == 1) { x <- 2 if (x == 1) { x <- 3 } } x

- What will the following code return?

x <- 1 if (x == 1) { x <- 2 if (x == 1) { x <- 3 } } x

## [1] 2

`else`

Statement`if`

statement tells R what to do when the condition is`TRUE`

.`else`

statement tells R what to do when the condition is`FALSE`

.

if (condition) { Plan A } else { Plan B }

`else`

Statement**Example**: Write a function for rounding a number to the nearest whole number.

a <- 3.14

- Isolate the decimal component with
`trunc()`

function.

decimal <- a - trunc(a) decimal

## [1] 0.14

`else`

Statement- Use
`if else`

to round the number (up or down):

if (decimal >= 0.5) { a <- trunc(a) + 1 } else { a <- trunc(a) } a

## [1] 3

`else`

Statement- Write the rounding function:

my_round <- function(a) { decimal <- a - trunc(a) if (decimal >= 0.5) { a <- trunc(a) + 1 } else { a <- trunc(a) } return(a) }

`else`

Statementmy_round(3.14)

## [1] 3

round(3.14)

## [1] 3

my_round(4.9)

## [1] 5

round(4.9)

## [1] 5

`else`

Statementa <- 1 b <- 1 if (a > b) { print("A wins!") } else if (a < b) { print("B wins!") } else { print("Tie.") }

## [1] "Tie."

cars

hist(x = cars$speed)

- Change the plot title

hist(x = cars$speed, main = "Histogram of Speed")

- Change x-axis label

hist(x = cars$speed, main = "Histogram of Speed", xlab = "Speed (mph)")

- Change the y-axis (from frequency) to probability/density

hist(x = cars$speed, main = "Histogram of Speed", xlab = "Speed (mph)", probability = TRUE)

- Change
**how the histogram is graphed**(by changing the column width):- The argument
`breaks`

in`hist()`

can take one of the following:- a vector giving the breakpoints between histogram cells,
- a function to compute the vector of breakpoints,
- a single number giving the number of cells for the histogram,
- a character string naming an algorithm to compute the number of cells (see ‘Details’),
- a function to compute the number of cells.

- The argument

# a vector giving the breakpoints between histogram cells hist(x = cars$speed, main = "Histogram of Speed", xlab = "Speed (mph)", probability = TRUE, breaks = c(0, 4, 8, 12, 16, 20, 24, 28, 32))

# a function to compute the vector of breakpoints hist(x = cars$speed, main = "Histogram of Speed", xlab = "Speed (mph)", probability = TRUE, breaks = seq(from = 0, to = 30, by = 3))

# a single number giving the number of cells for the histogram hist(x = cars$speed, main = "Histogram of Speed", xlab = "Speed (mph)", probability = TRUE, breaks = 10)

# a single number giving the number of cells for the histogram hist(x = cars$speed, main = "Histogram of Speed", xlab = "Speed (mph)", probability = TRUE, breaks = "Freedman-Diaconis")

# a function to compute the number of cells hist(x = cars$speed, main = "Histogram of Speed", xlab = "Speed (mph)", probability = TRUE, breaks = 5*2)