(I) : Operatory i funkcje macierzy

R udostępnia operatory i funkcje do manipulowania macierzami

Operator / Funkcja         :         Działanie                    :              Przykład

% *%                      mnożenie macierzy                      a% *% b

%o% lub outer()           produkt zewnętrzny dwóch wektorów, macierze lub  tablice                                 a% *% b, outer (a, b)

t()                  transpozycja macierzy                                                 t(a)

crossprod() lub tcrossprod ()     produkt krzyżowy macierzy lub  dwie macierze                                                                crossprod(a) lub crossprod(a, b) lub  crossprod(a) lub tcrossprod(a, b)

diag()          przekątna matrycy lub macierz diagonalna         diag(a),a jest macierzą lub diag(a),a jest wektorem

solve()      wrotność macierzy lub rozwiązanie dla Xa =   b                                             solve(a), solve(X,b)

Operatorem mnożenia macierzy jest% *%. R zwróci błąd, jeśli dwie macierze nie będą zgodne. Dla dwóch tablic (tablice obejmują wektory i macierze),% o% lub outer (), daje zewnętrzny produkt tablic.

Aby transponować macierz, użyj funkcji t (), na przykład t (a). Aby uzyskać iloczyn krzyżowy jednej macierzy z drugą (lub macierzą oryginalną), użyj funkcji crossprod () lub funkcji tcrossprod (). Jeśli aib są matrycami zgodnymi, to

crossprod (a) = t (a)% *% a,

tcrossprod (a) = a% *% t (a),

crossprod (a, b) = t (a)% *% b,

tcrossprod (a, b) = a% *% t (b).

Aby znaleźć odwrotność niesingularnej macierzy kwadratowej, użyj funkcji solver (), na przykład solass (a). Funkcja rozwiązywanie () może również rozwiązać równanie liniowe

Xa = b,

dla a, gdzie X jest niejednorodną macierzą kwadratową, a b ma taką samą liczbę wierszy jak X. Składnia jest rozwiązana (X, b). Aby utworzyć macierz diagonalną lub uzyskać diagonalną macierz, użyj funkcji diag (). Jeśli a jest wektorem, diag (a) zwróci macierz diagonalną o przekątnej równej a.

Na przykład:

> a = 1:2

> a

[1] 1 2

> diag(a)

[,1] [,2]

[1,] 1 0

[2,] 0 2

Jeśli a jest macierzą, diag (a) zwróci ukośne elementy macierzy, nawet jeśli macierz nie jest kwadratowa. Na przykład:

> a = matrix(1:6,2,3)

> a

[,1] [,2] [,3]

[1,] 1 3 5

[2,] 2 4 6

> diag(a)

[1] 1 4

Aby uzyskać więcej informacji, stronę pomocy CRAN dotyczącą mnożenia macierzy można znaleźć, wprowadzając ??„ matrix multiplication” po znaku zachęty R. W przypadku pięciu funkcji wpisanie? Nazwa, gdzie nazwa jest nazwą funkcji, powoduje wyświetlenie strony pomocy dla funkcji.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *