num_var <- 42.5
num_var[1] 42.5
create a numeric variable “num_var” with variable with the value “42.5”.
num_var <- 42.5
num_var[1] 42.5
create a character variable “char_var” with the value “R is fun!”
char_var <- "R is fun!"
char_var[1] "R is fun!"
Print the data type “char_var”
class(char_var)[1] "character"
Create a list “student_info” with the following elements: “name” : “Mohammad Nasir Abdullah”,“age” : 18,“grades” : a numeric vector with values “99,100,89’.
student_info <- list(
name = c("Mohammad Nasir Abdullah"),
age = c(18),
grades = c(99, 100, 89)
)
student_info$name
[1] "Mohammad Nasir Abdullah"
$age
[1] 18
$grades
[1] 99 100 89
Create a data frame “df_students” with the following columns : “Name” : “John”, “Pablo”, “Age” : “22”,“30”, “Grade” : “A”,“C”
df_students <- data.frame(
Name = c("John", "Pablo"),
Age = c(22, 30),
Grade = c("A", "C")
)
df_students Name Age Grade
1 John 22 A
2 Pablo 30 C
Create a numeric vector “vec_num” with the values “5,10,15,20”.
vec_num <- c(5,10,15,20)
vec_num[1] 5 10 15 20
Extract the second and third elements from “vec_num”.
vec_num <- c(5, 10, 15, 20)
vec_num[c(2, 3)][1] 10 15
Create a vector “vec_seq” that contains a sequence of number from 1 to 10.
vec_seq <- seq(1,10, by = 1)
vec_seq [1] 1 2 3 4 5 6 7 8 9 10
Create a vector “vec_rad” with 5 random numbers between 1 and 100.
vec_rad <- sample(1:100, size = 5, replace = TRUE)
vec_rad[1] 22 76 22 18 44
Create a character vector “vec_char’ with the values”apple”, “banana’,”cherry”.
vec_char <- c("apple", "banana", "cherry")
vec_char[1] "apple" "banana" "cherry"
Use the substr( ) function to extract the first 3 characters from each elements of “vec_char”.
vec_char <- substr(vec_char, 1, 3)
vec_char[1] "app" "ban" "che"
Create a character vector “vec_colors” with the values “red”, “blue”,“green”,“red”,“blue”.
vec_colors <- c("red", "blue", "green", "red", "blue")
vec_colors[1] "red" "blue" "green" "red" "blue"
Convert “vec_colors” into a factor vector “factor_colors”.
factor_colors <- as.factor(vec_colors)
factor_colors[1] red blue green red blue
Levels: blue green red
Print the levels of “factor_colors”.
levels(factor_colors)[1] "blue" "green" "red"
Given a numeric vector “vec_bonus” = c(10,20,30,40,50)“, write a code snippet to: Extract all elements greater than 25, Calculate the mean of the extracted elements.
vec_bonus <- c(10, 20, 30, 40, 50)
extracted_elements <- vec_bonus[vec_bonus > 25]
extracted_elements[1] 30 40 50
mean(extracted_elements)[1] 40
Given the following vectors:
weights <- c(55,68,72, 61,58,75,64,70)
names <- c("Alice","Bob","Charlie","Daisy", "Eve", "Frank","Grace", "Henry")Identity the names of individuals whose weight is greater than 65kg.
names[weights > 65][1] "Bob" "Charlie" "Frank" "Henry"
Find the average weight of individuals weighting less than or equal to 60 kg.
mean(weights[weights <= 60])[1] 56.5
Extract the weights of individuals whose names start with the letter ‘A’ od ‘D’.
weights[names %in% c("Alice", "Daisy")][1] 55 61
Determine the number of individuals whose weight is between 60kg and 70kg (inclusive)
sum(weights >= 60 & weights <= 70)[1] 4
Given the following vector of daily temperatures ( in Celcius ) for a week.
temperatures <- c(22,25,19,21,18,24,23)
days <- c("Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday")Identify the days when the temperatures was below 20C
days[temperatures < 20][1] "Wednesday" "Friday"
Calculate the difference between the highest an lowest temperatures of the week.
max(temperatures) - min(temperatures)[1] 7
Determine the number of days when the temperature was between 20c and 24c ( inclusive).
sum(temperatures >= 20 & temperatures <= 24)[1] 4
Given the following vector of exam scores:
scores <- c(85,78,92,65,88,70,95,80,60,90)
students <- c("Anna","Ben","Cara","Dan","Ella","Finn","Grace","Hank","Ivy")Identify the students who scored above 90.
students[scores > 90][1] "Cara" "Grace"
Find the average score of students who scored below 80.
mean(scores[scores < 80])[1] 68.25
Extract the scores of students whose names start with a vowel (A,E,I,O,U).
scores[substr(students,1,1) %in% c("A","E","I","O","U")][1] 85 88 60 90
TAKE HOME EXERCISE
Create a numeric vector containing the numbers from 10 to 20 and a character vector containing the days of the week.Display both vectors.
num_vector <- 10:20
days_vector <- c("Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday")
num_vector [1] 10 11 12 13 14 15 16 17 18 19 20
days_vector[1] "Monday" "Tuesday" "Wednesday" "Thursday" "Friday" "Saturday"
[7] "Sunday"
Given two vectors : a<- c(1,2,3) and b <- c(4,5,6).Concatenate them to form a single vector.
a <- c(1, 2, 3)
b <- c(4, 5, 6)
combined_vector <- c(a, b)
combined_vector[1] 1 2 3 4 5 6
Given the vector temperatures <- c (15,18,20,22,19,17,16), extract the temperatures for the 2nd, 4th and 6th days.
temperatures <- c(15, 18, 20, 22, 19, 17, 16)
extracted_temps <- temperatures[c(2, 4, 6)]
extracted_temps[1] 18 22 17
From the same temperatures vector, omit the temperature of the 5th day.
omitted_temp <- temperatures[-5]
omitted_temp[1] 15 18 20 22 17 16
Given the vector prices <- c(10,20,30,40,50), calculate the new prices after a 10% discount.
prices <- c(10, 20, 30, 40, 50)
new_prices <- prices * 0.9
new_prices[1] 9 18 27 36 45
Create a vector that contains the numbers from 5 to 50, but only includes every 5th number (i.e, 5, 10, 15, …).
new_vector <- seq(5, 50, by = 5)
new_vector [1] 5 10 15 20 25 30 35 40 45 50
Simulate the results of rolling a sided die 10 times.
dice_rolls <- sample(1:6, size = 10, replace = TRUE)
dice_rolls [1] 3 1 4 4 1 6 2 6 2 2
Given the vector fruits <- c(“apple”, “banana”, “cherry’). extract the first letters of each fruit.
fruits <- c("apple", "banana", "cherry")
first_three <- substr(fruits, 1, 1)
first_three[1] "a" "b" "c"
Given the vector ages <- c(25,30,35,40,45,50), identify which ages are greater than 30 and less than 50.
ages <- c(25, 30, 35, 40, 45, 50)
selected_ages <- ages[ages > 30 & ages < 50]
selected_ages[1] 35 40 45
Given two vector: vector1 <- c(5,10,15) and vector2 <- c(10,10,20), determine which elements of vector1 are less than or equal to the corresponding elements in vector2.
vector1 <- c(5, 10, 15)
vector2 <- c(10, 10, 20)
comparison_result <- vector1 <= vector2
comparison_result[1] TRUE TRUE TRUE