Matricas reizināšana ir visnoderīgākā matricas darbība. Mūsdienās to plaši izmanto tādās jomās kā tīkla teorija, koordinātu transformācija un daudzi citi lietojumi. R matricu var izveidot, izmantojot matrica () funkcija, un šī funkcija kā argumentus izmanto ievades vektoru, nrow, ncol, byrow, dimnames.
Matricas izveidošana
Matricu var izveidot, izmantojot funkciju matrix().
R
# R program to create a matrix m <- matrix(1:8, nrow=2) print(m)>
Izvade:
[,1] [,2] [,3] [,4] [1,] 1 3 5 7 [2,] 2 4 6 8>
Matricu reizināšana
Reizināšanas operators * tiek izmantots, lai reizinātu matricu ar skalāru vai divu matricu reizināšanu elementāri.
Reizināšana ar skalāru
Ja jūs reizinat matricu ar skalāru vērtību, tad katrs matricas elements tiks reizināts ar šo skalāru.
# R program for matrix multiplication # with a scalar m <- matrix(1:8, nrow=2) m <- 2*m print(m)>
Izvade:
[,1] [,2] [,3] [,4] [1,] 2 6 10 14 [2,] 4 8 12 16>
Iepriekš minētajā kodā skalārs tiek reizināts ar katru sākotnējās matricas elementu. Šādi notiek reizināšanas process.
2*1=2 2*3=6 2*5=10 2*7=14 2*2=4 2*4=8 2*6=12 2*8=16>
Reizināšana starp matricām
Reizinot matricu ar citu matricu, notiek divu matricu elementu reizināšana. Visi atbilstošie abu matricu elementi tiks reizināti ar nosacījumu, ka abām matricām būs vienāda dimensija.
R # R program for matrix multiplication # Creating matrices m <- matrix(1:8, nrow=2) n <- matrix(8:15, nrow=2) # Multiplying matrices print(m*n)>
Izvade:
[,1] [,2] [,3] [,4] [1,] 8 30 60 98 [2,] 18 44 78 120>
Šādi notiek reizināšanas process.
1*8=8 3*10=30 5*12=60 7*14=98 2*9=18 4*11=44 6*13=78 8*15=120>
Reizināšana ar vektoru
Ja matrica tiek reizināta ar vektoru, vektors tiks pārcelts uz rindu vai kolonnu matricu, lai divi argumenti būtu atbilstoši.
R # R program for matrix multiplication # Creating matrix m <- matrix(1:8, nrow=2) # Creating a vector vec <- 1:2 # Multiplying matrix with vector print(vec*m)>
Izvade:
[,1] [,2] [,3] [,4] [1,] 1 3 5 7 [2,] 4 8 12 16>
Reizināšanas process notiek šādi:
1*1=1 1*3=3 1*5=5 1*7=7 2*2=4 2*4=8 2*6=12 2*8=16>
Reizināšana, izmantojot %*% operatoru
Operators %*% tiek izmantots matricas reizināšanai, apmierinot nosacījumu, ka kolonnu skaits pirmajā matricā ir vienāds ar rindu skaitu otrajā. Ja matricu A[M, N] un matricu B[N, Z] reizina, tad iegūtā matrica būs ar izmēru M*Z.
R # R program for matrix multiplication # Creating matrices m <- matrix(1:8, nrow=2) n <- matrix(8:15, nrow=4) # Multiplying matrices using operator print(m %*% n)>
Izvade:
[,1] [,2] [1,] 162 226 [2,] 200 280>
Šādi notiek reizināšana
1*8+3*9+5*10+7*11 = 162 1*12+3*13+5*14+7*15=226 2*8+4*9+6*10+8*11 = 200 2*12+4*13+6*14+8*15=280>