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 factor, 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:
# Vector of currencies as factor curr_f <- factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR')) # Output all the levels levels(curr_f)
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:
# Factors with no ordering factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR')) # Factors with ordering without labels parameter factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR'), ordered = T) # Factors with ordering with labels parameter factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR'), ordered = T, labels = c('USD', 'EUR', 'CHF', 'AUD', 'NOK'))
Observing the difference is instructive. Try it out for yourself!
Swipe to show code editor
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 thegrades_f
variable. - Display the entire
grades_f
variable.
Thanks for your feedback!
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 factor, 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:
# Vector of currencies as factor curr_f <- factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR')) # Output all the levels levels(curr_f)
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:
# Factors with no ordering factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR')) # Factors with ordering without labels parameter factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR'), ordered = T) # Factors with ordering with labels parameter factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR'), ordered = T, labels = c('USD', 'EUR', 'CHF', 'AUD', 'NOK'))
Observing the difference is instructive. Try it out for yourself!
Swipe to show code editor
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 thegrades_f
variable. - Display the entire
grades_f
variable.
Thanks for your feedback!
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 factor, 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:
# Vector of currencies as factor curr_f <- factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR')) # Output all the levels levels(curr_f)
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:
# Factors with no ordering factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR')) # Factors with ordering without labels parameter factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR'), ordered = T) # Factors with ordering with labels parameter factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR'), ordered = T, labels = c('USD', 'EUR', 'CHF', 'AUD', 'NOK'))
Observing the difference is instructive. Try it out for yourself!
Swipe to show code editor
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 thegrades_f
variable. - Display the entire
grades_f
variable.
Thanks for your feedback!
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 factor, 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:
# Vector of currencies as factor curr_f <- factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR')) # Output all the levels levels(curr_f)
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:
# Factors with no ordering factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR')) # Factors with ordering without labels parameter factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR'), ordered = T) # Factors with ordering with labels parameter factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR'), ordered = T, labels = c('USD', 'EUR', 'CHF', 'AUD', 'NOK'))
Observing the difference is instructive. Try it out for yourself!
Swipe to show code editor
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 thegrades_f
variable. - Display the entire
grades_f
variable.