Matrice

Matrice ir divdimensionāla datu struktūra, kas līdzīgi vektoram var saturēt tikai viena tipa datus. Matrici var izveidot izmantojot trīs funkcijas: cbind(), rbind() vai matrix().

Funkciju cbind() izmanto, lai izveidotu matrici, tās elementus secīgi rakstot kolonnās (iekavās aiz funkcijas jānorāda elementi, kas atradīsies katrā no kolonnām) (ja kolonnā ir vairāk kā viens elements, jāizmanto arguments c()):

> matrice1 <- cbind(c(1, 2, 3), c(4, 3, 6))
> matrice1
   [,1] [,2]
[1,] 1   4
[2,] 2   3
[3,] 3   6

Funkciju rbind() izmanto, lai izveidotu matrici, tās elementus secīgi rakstot rindās (iekavās aiz funkcijas jānorāda elementi, kas atradīsies katrā no rindām) (ja rindām ir vairāk kā viens elements, jāizmanto arguments c()):

> matrice2 <- rbind(c(1, 2, 3), c(4, 3, 6))
> matrice2
   [,1] [,2] [,3]
[1,] 1   2   3
[2,] 4   3   6

Funkcijā matrix() tiek norādīti visi matricē iekļaujamie elementi (data), kā arī tiek norādīts rindu skaits (nrow) vai arī kolonnu skaits (ncol); abus nevajag norādīt, jo, ja ir norādīts, piemēram, kolonnu skaits, tad rindu skaits tiks aprēķināts automātiski, ņemot vērā elementu skaitu matricē:

> matrice3 <- matrix(data = c(1, 2, 3, 4, 5, 6), nrow = 3)
> matrice3
   [,1] [,2]
[1,] 1   4
[2,] 2   3
[3,] 3   6

> matrice4 <- matrix(data = c(1, 2, 3, 4, 5, 6), ncol = 3)
> matrice4
   [,1] [,2] [,3]
[1,] 1   3   5
[2,] 2   4   6

Matricei var nomainīt gan kolonnu, gan rindu nosaukumus, izmantojot attiecīgi funkcijas colnames() un rownames(), norādot, kurai matricei jāmaina nosaukumi, kā arī kādi būs šie nosaukumi:

> colnames(matrice4) <- c("viens", "divi", "tris")
> rownames(matrice4) <- c("A", "B")
> matrice4
  viens divi tris
A  1     3     5
B  2     4     6

Līdzīgi kā ar vektoriem arī matricēm var atlasīt konkrētus elementus, bet ir jānorāda gan kārtas numurs rindā, gan kārtas numurs kolonnā.

Lai atlasītu visu kolonnu vērtības, kas atrodas pirmajā rindā, kvadrātiskajās iekavās kā pirmais skaitlis jānorāda vēlamās kolonnas numurs:

> matrice5 <- matrix(data = c(1, 2, 3, 4, 5, 6), ncol = 3)
> matrice5[1, ]
[1] 1 3 5

Lai atlasītu visu rindu vērtības, kas atrodas otrajā kolonnā, kvadrātiskajās iekavās jāliek komats un aiz tā vēlamās rindas numurs:

> matrice5[, 2]
[1] 3 4

Lai atlasītu vērtību, kas atrodas otrajā rindā un otrajā kolonnā, kvadrātiskajās iekavās jānorāda abi skaitļi

> matrice5[2, 2]
[1] 4