R Vectors
Vector is a sequence of data elements of the same type. It is a one dimensional array. Members of a vector are known as components.
There are five classes of vectors:
- Numeric
- Integer
- Complex
- Logical
- Character
Creating a Vector
Single element vector
In R, when you write just one value, it is considered as a vector of length 1. Let’s see the different type of vectors with a single element:
# character. print("Hello") # double. print(24.6) # integer. print(24L) # logical. print(TRUE) # complex. print(1+5i)
Output:
[1] "Hello" [1] 24.6 [1] 24 [1] TRUE [1] 1+5i
Multiple elements vector
We can create a vector of consecutive numbers through the:
1. colon operator (:)
Example:
> x <- 1:7 > x [1] 1 2 3 4 5 6 72. Using sequence operator (seq.)
Example:
# specify step size seq(1, 8, by= 2) #specify length of the vector seq(1, 5, length.out=9)
Output:
[1] 1 3 5 7 [1] 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.03. Using the c() function
Example:
# logical and numeric values are converted to characters. s <- c('hello','red', 10, TRUE) print(s)
Output:
[1] "hello" "red" "10" "TRUE"
Accessing vector elements
We can access the elements of a vector with the help of indexing. For indexing, we have to use the [] brackets. Each indexing starts with position one. 0, 1 TRUE and FALSE can also be used for indexing. The indexing vector can be logical, integer or character.
Example:
# Accessing vector elements with the help of position. w <- c("Sun","Mon","Tue","Wed","Thu","Fri","Sat") u <- w[c(2,4,6)] print(u) # Accessing vector elements with the help of logical indexing. v <- w[c(TRUE,FALSE,FALSE,FALSE,FALSE,TRUE,FALSE)] print(v) # Accessing vector elements with the help of negative indexing. x <- w[c(-2,-5)] print(x) # Accessing vector elements with the help of 0/1 indexing. y <- w[c(0,0,0,0,0,0,1)] print(y)
Output:
[1] "Mon" "Wed" "Fri" [1] "Sun" "Fri" [1] "Sun" "Tue" "Wed" "Fri" "Sat" [1] "Sun"
Vector Operations
1. Vector ArithmeticWe can perform addition, subtraction, multiplication, and division operation with the two vectors of the same length. the result will be a vector.
Example:
# Create two vectors. v1 <- c(12,1,0,5,4,2) v2 <- c(10,4,3,1,2,0) # addition. add.result <- v1+v2 print(add.result) # subtraction. sub.result <- v1-v2 print(sub.result) # multiplication. multi.result <- v1*v2 print(multi.result) # division. divi.result <- v1/v2 print(divi.result)
Output:
[1] 22 5 3 6 6 2 [1] 2 -3 -3 4 2 2 [1] 120 4 0 5 8 0 [1] 1.20 0.25 0.00 5.00 2.00 Inf2. Combining Vectors
Example:
n = c (10, 13, 24) s = c('Nikita', 'Nidhi', 'Deep') c(n, s)
Output:
[1] "10" "13" "24" "Nikita" "Nidhi" "Deep"3. Sorting a Vector
We can sort the elements of a vector through the sort() function.
v <- c(13, 80, 14, 50, 0, 11, -19, 100) # Sort the elements of the vector. sort.result <- sort(v) print(sort.result) # Sort the elements in the reverse order. revsort.result <- sort(v, decreasing = TRUE) print(revsort.result) # Sorting character vectors. v <- c("Nikita","Deep","Ridhi","Aman") sort.result <- sort(v) print(sort.result) # Sorting character vectors in reverse order. revsort.result <- sort(v, decreasing = TRUE) print(revsort.result)
Output:
[1] -19 0 11 13 14 50 80 100 [1] 100 80 50 14 13 11 0 -19 [1] "Aman" "Deep" "Nikita" "Ridhi" [1] "Ridhi" "Nikita" "Deep" "Aman"4. Deleting a Vector
A vector can be deleted by simply assigning a NULL to it.
# creating a vector v <- c(13, 80, 14, 50, 0, 11, -19, 100) v # deleting vector v v <- NULL v
Output:
[1] 13 80 14 50 0 11 -19 100 NULLReference: https://www.datamentor.io/r-programming/vector/ https://data-flair.training/blogs/r-vector/