## Levels

Let's revisit the `Levels`

label: you often see it when working with factor outputs. What if you want to view all possible values a factor can take?

To display **all levels of a facto**r, which are the distinct categorical values it holds, use the `levels()`

function with the factor variable as the argument. Let's take a look at an example:

Interestingly, you can rearrange these levels without altering the actual data. Nonetheless, we sometimes encounter **ordered** factor variables. Take height, for instance: one might be classified as tall, medium, or short. This ordering implies tall > medium > short.

R accommodates this by allowing you to specify the `ordered`

parameter as `TRUE`

. This organizes the variables **alphabetically** for textual values or numerically for values that are numbers.

While numerical ordering is typically straightforward and desired, alphabetical ordering might not be appropriate. To establish a **specific order**, you also need to set the `labels`

parameter to a vector that lists your values in **ascending order**.

Let's look at an example for clarity:

Observing the difference is instructive. Try it out for yourself!

# Task

Let's say you have a vector of grades ranging from 'A' to 'F'. You're tasked with converting this into an **ordered factor** with the sequence 'F < D < C < B < A':

- Convert the
`grades`

vector to a factor, capturing the required order, and store it in the`grades_f`

variable. - Display the entire
`grades_f`

variable.

Everything was clear?

Course Content

R Introduction: Part I

# R Introduction: Part I

## Levels

Let's revisit the `Levels`

label: you often see it when working with factor outputs. What if you want to view all possible values a factor can take?

To display **all levels of a facto**r, which are the distinct categorical values it holds, use the `levels()`

function with the factor variable as the argument. Let's take a look at an example:

Interestingly, you can rearrange these levels without altering the actual data. Nonetheless, we sometimes encounter **ordered** factor variables. Take height, for instance: one might be classified as tall, medium, or short. This ordering implies tall > medium > short.

R accommodates this by allowing you to specify the `ordered`

parameter as `TRUE`

. This organizes the variables **alphabetically** for textual values or numerically for values that are numbers.

While numerical ordering is typically straightforward and desired, alphabetical ordering might not be appropriate. To establish a **specific order**, you also need to set the `labels`

parameter to a vector that lists your values in **ascending order**.

Let's look at an example for clarity:

Observing the difference is instructive. Try it out for yourself!

# Task

Let's say you have a vector of grades ranging from 'A' to 'F'. You're tasked with converting this into an **ordered factor** with the sequence 'F < D < C < B < A':

- Convert the
`grades`

vector to a factor, capturing the required order, and store it in the`grades_f`

variable. - Display the entire
`grades_f`

variable.

Everything was clear?