You can insert an R code chunk into an R Markdown document by using a keyboard shortcut. The default keyboard shortcut to insert an R code is:
Windows/Linux: Ctrl + Alt + I Mac: Command + Option + I
Make sure to comment on your code using #
.Subtraction.Multiplication.square root
15-1.5 #subtraction
## [1] 13.5
54*23 #multiplication
## [1] 1242
sqrt(54) #square root
## [1] 7.348469
Suppose you have a set of numbers representing the assignments scores: {87,100, 91, 95, 81.5, 0, 39, 74, 92}
Calculate the average of the scores, and round your answer to two decimal number
scores <- c(87,100, 91, 95, 81.5, 0, 39, 74, 92)
#Calculate the average of the scores, and round your answer to two decimal number
mean(scores) #average of scores vector
## [1] 73.27778
round(mean(scores),2) #rounding mean of scores to 2 decimal places
## [1] 73.28
Find the Maximum and Minimum score
max(scores) # finding the maximum of the vector scores
## [1] 100
min(scores) #finding the minimum of the vector scores
## [1] 0
Find how many scores were above the average, use coding for this
mean (scores) #finding mean of scores
## [1] 73.27778
sum(scores > mean(scores)) #number of scores above average
## [1] 7
Also, to list the elements greater than mean.
elements_above_average <- scores [scores > mean(scores)] #list of elements greater than the mean
Create a new set called new_scores that includes the elements from indices 2 to 6 of the scores vector
new_scores <- scores[2:6] # create new_scores
new_scores #wanted to print the elements in new_scores
## [1] 100.0 91.0 95.0 81.5 0.0
class(scores)
## [1] "numeric"
typeof(scores)
## [1] "double"
class(new_scores)
## [1] "numeric"
typeof(new_scores)
## [1] "double"
Read section 2.3, then answer the following questions
Create a vector with the number 1 repeated 5 times. Print it.
# Create a vector with the number 1 repeated 5 times. Print it
vec_one_fivetimes <- rep(1, times = 5) # define create vec_one_fivetimes
# repeating the number 1 for total of 5 times
vec_one_fivetimes #printing the vector
## [1] 1 1 1 1 1
Create a vector with a sequence of numbers from 1 to 10 with a step of 2. Print it
my_seq <- seq( from = 1, to = 10, by = 2) #sequence starting from 1 to 10 in steps of 2, stopping at 9 because 9+2 > 10
my_seq #printing
## [1] 1 3 5 7 9
Create a vector by repeating a sequence from 1 to 3, 2 times. Print it.
# Create a vector by repeating a sequence from 1 to 3, 2 times. Print it.
my_seq2 <- rep( 1:3, times = 2 ) #repeating sequence 1 to 3 , 2 times
my_seq2 #printing
## [1] 1 2 3 1 2 3
Check the class of the vector: mixed_vector <- c(1, “two”, 3.0, TRUE, 2)
mixed_vector <- c(1, "two", 3.0, TRUE, 2)
# Check the class of the vector
class(mixed_vector) # call the function class to find class of mixed_vector
## [1] "character"
# the class is character for each element
# because there is the character "two"
Coerce to numeric and print it :
numeric_vector <-as.numeric(mixed_vector) # used numeric coercion
## Warning: NAs introduced by coercion
numeric_vector # printing
## [1] 1 NA 3 NA 2
# 1, 3.0, and 2 are coerced to characters "1", "3.0" ,and "2" and then can be coerced to numeric since only number in string
# "two" is character trying to get converted to numeric - this fails so NA is returned
# TRUE coerced to character "TRUE" non number in character and so numeric fails so NA
Wrote a small chunk of code to identify the class and then change class to numeric. If this works, then character of numbers seems to be treated a little differently. As commented above.
character_of_numbers <- "3.0"
character_of_numbers
## [1] "3.0"
class(character_of_numbers)
## [1] "character"
what_happened <-as.numeric(character_of_numbers)
class(what_happened) # I thought that class would return NA
## [1] "numeric"
what_happened
## [1] 3