📖 Scenario: You are working with a small dataset that contains different types of information. You need to check the types of these data and convert them to the correct types for further analysis.
🎯 Goal: Learn how to check the type of variables and convert them to other types in R.
📋 What You'll Learn
Create variables with specific values and types
Check the type of each variable using class()
Convert variables to different types using as.character(), as.numeric(), and as.logical()
Print the results to see the changes
💡 Why This Matters
🌍 Real World
Data scientists and analysts often receive data in mixed types and need to check and convert types before analysis.
💼 Career
Understanding type checking and conversion is essential for data cleaning, preprocessing, and ensuring correct data manipulation in R programming jobs.
Progress0 / 4 steps
1
Create variables with different types
Create three variables in R: num_var with the numeric value 42, char_var with the character string "100", and log_var with the logical value TRUE.
R Programming
Hint
Use the assignment operator <- to create variables.
2
Check the types of the variables
Use the class() function to check the type of each variable: num_var, char_var, and log_var. Assign the results to variables type_num, type_char, and type_log respectively.
R Programming
Hint
Use class(variable) to get the type of a variable.
3
Convert variables to different types
Convert num_var to a character and assign it to num_to_char. Convert char_var to numeric and assign it to char_to_num. Convert log_var to numeric and assign it to log_to_num.
R Programming
Hint
Use as.character(), as.numeric() to convert types.
4
Print the types and converted values
Print the variables type_num, type_char, type_log, and the converted variables num_to_char, char_to_num, log_to_num using print().
R Programming
Hint
Use print(variable) to show the values.
Practice
(1/5)
1. Which function in R checks if a variable is of numeric type?
easy
A. as.character()
B. as.numeric()
C. is.character()
D. is.numeric()
Solution
Step 1: Understand type checking functions
Functions starting with is. check the type of a variable.
Step 2: Identify the correct function for numeric check
is.numeric() returns TRUE if the variable is numeric.
Final Answer:
is.numeric() -> Option D
Quick Check:
Type check numeric = is.numeric() [OK]
Hint: Use is.type() to check type, as.type() to convert [OK]
Common Mistakes:
Confusing is.numeric() with as.numeric()
Using as.character() to check type
Using is.character() for numeric check
2. Which of the following is the correct way to convert a character vector c("1", "2", "3") to numeric in R?
easy
A. is.numeric(c("1", "2", "3"))
B. as.numeric(c("1", "2", "3"))
C. as.character(c(1, 2, 3))
D. is.character(c(1, 2, 3))
Solution
Step 1: Identify conversion functions
as.numeric() converts data to numeric type.
Step 2: Apply conversion to character vector
Using as.numeric(c("1", "2", "3")) converts strings to numbers 1, 2, 3.
Final Answer:
as.numeric(c("1", "2", "3")) -> Option B
Quick Check:
Convert char to numeric = as.numeric() [OK]
Hint: Use as.numeric() to convert strings to numbers [OK]
Common Mistakes:
Using is.numeric() instead of as.numeric()
Trying to convert numeric to character for numeric conversion
Confusing is.character() with conversion functions
3. What will be the output of the following R code?
is.numeric(num_vec) returns TRUE because num_vec is numeric.
Final Answer:
TRUE -> Option A
Quick Check:
as.numeric() converts, is.numeric() confirms [OK]
Hint: as.numeric() converts, is.numeric() checks type [OK]
Common Mistakes:
Expecting FALSE because original was character
Thinking as.numeric() returns character
Confusing is.numeric() with as.numeric()
4. Identify the error in the following R code snippet:
val <- "123abc"
num_val <- as.numeric(val)
print(num_val)
medium
A. No error, prints 123
B. Syntax error due to quotes
C. Prints NA with a warning
D. Prints 0 without warning
Solution
Step 1: Attempt to convert mixed string to numeric
as.numeric("123abc") cannot convert because of non-numeric characters.
Step 2: Result of conversion
It returns NA and shows a warning about NAs introduced by coercion.
Final Answer:
Prints NA with a warning -> Option C
Quick Check:
Invalid numeric conversion = NA + warning [OK]
Hint: Invalid numeric strings convert to NA with warning [OK]
Common Mistakes:
Expecting partial numeric conversion
Ignoring warning messages
Assuming syntax error due to quotes
5. You have a list lst <- list("5", 10, "abc", "15.5"). Which R code correctly converts all elements to numeric, replacing non-convertible values with 0?
hard
A. sapply(lst, function(x) if(is.na(as.numeric(x))) 0 else as.numeric(x))
B. sapply(lst, function(x) as.numeric(x))
C. sapply(lst, function(x) if(is.na(as.numeric(x))) as.numeric(x) else 0)
D. sapply(lst, function(x) if(is.numeric(x)) x else 0)
Solution
Step 1: Convert each element to numeric and check for NA
Use as.numeric(x) inside a function and check if result is NA.
Step 2: Replace NA with 0, else keep numeric value
If as.numeric(x) is NA, return 0; otherwise return the numeric value.
Final Answer:
sapply(lst, function(x) if(is.na(as.numeric(x))) 0 else as.numeric(x)) -> Option A
Quick Check:
Replace NA with 0 using conditional inside sapply [OK]
Hint: Use is.na(as.numeric(x)) to detect and replace [OK]
Common Mistakes:
Not checking for NA after conversion
Replacing numeric values incorrectly
Confusing condition logic in if-else
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.