1

random_value <- runif(1, min=3, max=10)
n_dims <- as.integer(random_value)
print(n_dims)
## [1] 6
my_vec <- 1:n_dims^2

sample(x=my_vec)
##  [1]  1 16 25 34 30 31  3 14  7 24 27 12 33 11 32 22 28 19 23 36 18 21  9 10 17
## [26] 35  4 20  5  8 26 29  6 13  2 15
m <- matrix(data=my_vec,nrow=n_dims)
print(m)
##      [,1] [,2] [,3] [,4] [,5] [,6]
## [1,]    1    7   13   19   25   31
## [2,]    2    8   14   20   26   32
## [3,]    3    9   15   21   27   33
## [4,]    4   10   16   22   28   34
## [5,]    5   11   17   23   29   35
## [6,]    6   12   18   24   30   36
transposed_matrix <- t(m)
print(transposed_matrix)
##      [,1] [,2] [,3] [,4] [,5] [,6]
## [1,]    1    2    3    4    5    6
## [2,]    7    8    9   10   11   12
## [3,]   13   14   15   16   17   18
## [4,]   19   20   21   22   23   24
## [5,]   25   26   27   28   29   30
## [6,]   31   32   33   34   35   36
# switches order of columns and rows

rowSums(m)
## [1]  96 102 108 114 120 126
rowMeans(m)
## [1] 16 17 18 19 20 21
eigen(m)
## eigen() decomposition
## $values
## [1]  1.164118e+02+0.000000e+00i -5.411822e+00+0.000000e+00i
## [3]  4.660296e-15+0.000000e+00i  6.417128e-16+1.832109e-15i
## [5]  6.417128e-16-1.832109e-15i -1.063121e-15+0.000000e+00i
## 
## $vectors
##              [,1]           [,2]          [,3]                    [,4]
## [1,] 0.3542745+0i -0.71909760+0i -0.1342200+0i  0.09720349-0.39400738i
## [2,] 0.3752350+0i -0.50772079+0i  0.4622665+0i -0.05245290+0.05573989i
## [3,] 0.3961956+0i -0.29634399+0i -0.5823752+0i -0.15250865+0.42881785i
## [4,] 0.4171561+0i -0.08496719+0i  0.4864639+0i  0.34950817+0.23031189i
## [5,] 0.4381167+0i  0.12640962+0i -0.4037682+0i -0.51769625+0.00000000i
## [6,] 0.4590772+0i  0.33778642+0i  0.1716330+0i  0.27594614-0.32086225i
##                         [,5]           [,6]
## [1,]  0.09720349+0.39400738i  0.51431380+0i
## [2,] -0.05245290-0.05573989i -0.23908480+0i
## [3,] -0.15250865-0.42881785i -0.76232310+0i
## [4,]  0.34950817-0.23031189i  0.26791247+0i
## [5,] -0.51769625+0.00000000i  0.13591457+0i
## [6,]  0.27594614+0.32086225i  0.08326706+0i
# $values: these numbers are all eigen values of the matrix.

# $vectors: each column of these numbers are eigen vectors, that correspond with the eigen values.

#value
typeof(1.611684e+01)
## [1] "double"
#vector
typeof(-0.4645473)
## [1] "double"

2

my_matrix <- matrix(runif(16), nrow=4, ncol=4)
print(my_matrix)
##            [,1]      [,2]       [,3]       [,4]
## [1,] 0.05525524 0.2327760 0.46948318 0.04414688
## [2,] 0.63524202 0.1772380 0.26800263 0.39908561
## [3,] 0.92838723 0.3893404 0.38646314 0.51099208
## [4,] 0.82265657 0.1946595 0.07818348 0.36814108
my_logical <- runif(100) 
my_logical <- sample(c(TRUE, FALSE), 100, replace = TRUE)
print(my_logical)
##   [1] FALSE FALSE  TRUE FALSE FALSE FALSE  TRUE  TRUE  TRUE  TRUE  TRUE FALSE
##  [13] FALSE FALSE  TRUE  TRUE FALSE FALSE  TRUE FALSE FALSE  TRUE  TRUE  TRUE
##  [25]  TRUE FALSE FALSE FALSE  TRUE  TRUE FALSE FALSE  TRUE FALSE  TRUE  TRUE
##  [37]  TRUE  TRUE FALSE FALSE FALSE FALSE FALSE  TRUE FALSE  TRUE FALSE  TRUE
##  [49] FALSE  TRUE  TRUE  TRUE FALSE FALSE FALSE FALSE FALSE  TRUE FALSE FALSE
##  [61]  TRUE  TRUE  TRUE FALSE  TRUE  TRUE FALSE  TRUE  TRUE FALSE  TRUE  TRUE
##  [73] FALSE FALSE  TRUE FALSE  TRUE  TRUE FALSE FALSE FALSE  TRUE  TRUE  TRUE
##  [85]  TRUE  TRUE FALSE  TRUE  TRUE FALSE FALSE  TRUE FALSE FALSE FALSE FALSE
##  [97]  TRUE  TRUE FALSE FALSE
my_letters <- sample(letters, 26)
print(my_letters)
##  [1] "k" "a" "v" "f" "j" "g" "d" "t" "q" "h" "u" "n" "z" "b" "o" "x" "s" "i" "p"
## [20] "e" "w" "y" "r" "c" "m" "l"
new_list <- c(my_matrix[2,2], my_logical[2], my_letters[1])
print(new_list)
## [1] "0.17723796935752" "FALSE"            "k"
typeof(my_matrix[2,2])
## [1] "double"
typeof(my_logical[2])
## [1] "logical"
typeof(my_logical[2])
## [1] "logical"
typeof(new_list)
## [1] "character"

3

my_unis <- runif(26, min=0, max=10)
print(my_unis)
##  [1] 7.2908311 3.0178946 5.2572010 4.0862082 0.7949235 2.7962733 7.8459077
##  [8] 5.2157845 7.1220618 1.1126303 8.1055671 5.7597731 2.3818778 7.6185404
## [15] 0.4865937 7.8139811 1.0364295 6.8040039 6.1574352 4.4734005 3.4184800
## [22] 3.8951768 4.1176272 1.9274437 4.9674582 0.1987173
my_letters <- sample(LETTERS, 26)
print(my_letters)
##  [1] "N" "T" "D" "R" "K" "X" "G" "Y" "Q" "B" "U" "O" "E" "H" "J" "M" "C" "S" "A"
## [20] "L" "V" "F" "I" "P" "Z" "W"
data_frame <- matrix(c(my_unis, my_letters), nrow=26, ncol=2)
print(data_frame)  
##       [,1]                [,2]
##  [1,] "7.29083106387407"  "N" 
##  [2,] "3.01789458375424"  "T" 
##  [3,] "5.25720101082698"  "D" 
##  [4,] "4.08620822476223"  "R" 
##  [5,] "0.794923468492925" "K" 
##  [6,] "2.7962732850574"   "X" 
##  [7,] "7.84590768162161"  "G" 
##  [8,] "5.21578451152891"  "Y" 
##  [9,] "7.12206181138754"  "Q" 
## [10,] "1.11263029510155"  "B" 
## [11,] "8.1055671419017"   "U" 
## [12,] "5.75977314263582"  "O" 
## [13,] "2.38187778741121"  "E" 
## [14,] "7.61854040203616"  "H" 
## [15,] "0.486593653913587" "J" 
## [16,] "7.81398111255839"  "M" 
## [17,] "1.03642949368805"  "C" 
## [18,] "6.80400387383997"  "S" 
## [19,] "6.15743519971147"  "A" 
## [20,] "4.4734005164355"   "L" 
## [21,] "3.41848001116887"  "V" 
## [22,] "3.89517677482218"  "F" 
## [23,] "4.11762722535059"  "I" 
## [24,] "1.92744371946901"  "P" 
## [25,] "4.96745822019875"  "Z" 
## [26,] "0.198717338498682" "W"
data_frame[sample(1:nrow(data_frame), 4), 1] <- NA
which(!complete.cases(data_frame))
## [1]  4  5 21 25
str(data_frame)
##  chr [1:26, 1:2] "7.29083106387407" "3.01789458375424" "5.25720101082698" ...
my_letters_sorted <- sort(my_letters)
print(my_letters_sorted)
##  [1] "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S"
## [20] "T" "U" "V" "W" "X" "Y" "Z"
data_frame <- matrix(c(my_unis, my_letters_sorted), nrow=26, ncol=2)
print(data_frame)  
##       [,1]                [,2]
##  [1,] "7.29083106387407"  "A" 
##  [2,] "3.01789458375424"  "B" 
##  [3,] "5.25720101082698"  "C" 
##  [4,] "4.08620822476223"  "D" 
##  [5,] "0.794923468492925" "E" 
##  [6,] "2.7962732850574"   "F" 
##  [7,] "7.84590768162161"  "G" 
##  [8,] "5.21578451152891"  "H" 
##  [9,] "7.12206181138754"  "I" 
## [10,] "1.11263029510155"  "J" 
## [11,] "8.1055671419017"   "K" 
## [12,] "5.75977314263582"  "L" 
## [13,] "2.38187778741121"  "M" 
## [14,] "7.61854040203616"  "N" 
## [15,] "0.486593653913587" "O" 
## [16,] "7.81398111255839"  "P" 
## [17,] "1.03642949368805"  "Q" 
## [18,] "6.80400387383997"  "R" 
## [19,] "6.15743519971147"  "S" 
## [20,] "4.4734005164355"   "T" 
## [21,] "3.41848001116887"  "U" 
## [22,] "3.89517677482218"  "V" 
## [23,] "4.11762722535059"  "W" 
## [24,] "1.92744371946901"  "X" 
## [25,] "4.96745822019875"  "Y" 
## [26,] "0.198717338498682" "Z"