행렬식

정의에 의한 계산

  • 예제 4.2
(A <- matrix(c(1, 2, -1, 2, 1, 0, 3, 4, 2), 3))
##      [,1] [,2] [,3]
## [1,]    1    2    3
## [2,]    2    1    4
## [3,]   -1    0    2
det(A)
## [1] -11

소행렬식에 의한 계산

  • 예제 4.5
(B <- matrix(c(3, 0, 3, -2, -2, -3, 2, 4, 1, 0, -1, 0, 2, 0, 0, 0), 4))
##      [,1] [,2] [,3] [,4]
## [1,]    3   -2    1    2
## [2,]    0   -3    0    0
## [3,]    3    2   -1    0
## [4,]   -2    4    0    0
det(B)
## [1] 12

행렬식의 기본성질

  • 예제 4.6
t(A)
##      [,1] [,2] [,3]
## [1,]    1    2   -1
## [2,]    2    1    0
## [3,]    3    4    2
det(t(A))
## [1] -11
det(A)
## [1] -11
  • 예제 4.7
(M <- matrix(c(1, 7, 7, 4, 5, 5, 3, 2, 2), 3))
##      [,1] [,2] [,3]
## [1,]    1    4    3
## [2,]    7    5    2
## [3,]    7    5    2
det(M)
## [1] 0
  • 예제 4.8
(A2 <- matrix(c(1, 4, 7, 2, 5, 8, 3, 6, 10), 3))
##      [,1] [,2] [,3]
## [1,]    1    2    3
## [2,]    4    5    6
## [3,]    7    8   10
det(A2)
## [1] -3
  • 예제 4.9
(A3 <- matrix(c(1, 8, 2, 3, 17, 7, 2, 21, 1), 3))
##      [,1] [,2] [,3]
## [1,]    1    3    2
## [2,]    8   17   21
## [3,]    2    7    1
det(A3)
## [1] 16
A4 <- A3
A3[2, ]
## [1]  8 17 21
A3[1, ]
## [1] 1 3 2
4*A3[1, ]
## [1]  4 12  8
(A4[2, ] <- A3[2, ] + 4*A3[1, ])
## [1] 12 29 29
A4
##      [,1] [,2] [,3]
## [1,]    1    3    2
## [2,]   12   29   29
## [3,]    2    7    1
det(A4)
## [1] 16
  • 예제 4.10
(A5 <- matrix(c(1, 3, 2, 8), 2))
##      [,1] [,2]
## [1,]    1    2
## [2,]    3    8
(B5 <- matrix(c(4, 6, 3, 6), 2))
##      [,1] [,2]
## [1,]    4    3
## [2,]    6    6
A5 %*% B5
##      [,1] [,2]
## [1,]   16   15
## [2,]   60   57
det(A5 %*% B5)
## [1] 12
det(A5)
## [1] 2
det(B5)
## [1] 6
det(A5)*det(B5)
## [1] 12

기본 행 연산

  • 4.4.1
(P.21.4 <- matrix(c(1, 4, 0, 0, 1, 0, 0, 0, 1), 3))
##      [,1] [,2] [,3]
## [1,]    1    0    0
## [2,]    4    1    0
## [3,]    0    0    1
P.21.4 %*% A3
##      [,1] [,2] [,3]
## [1,]    1    3    2
## [2,]   12   29   29
## [3,]    2    7    1
A4
##      [,1] [,2] [,3]
## [1,]    1    3    2
## [2,]   12   29   29
## [3,]    2    7    1
det(P.21.4)
## [1] 1
  • 4.4.2
(E.12 <- diag(3)[c(2, 1, 3),])
##      [,1] [,2] [,3]
## [1,]    0    1    0
## [2,]    1    0    0
## [3,]    0    0    1
det(E.12)
## [1] -1
(A6 <- matrix(c(2, 4, -2, 5, 9, 6, 1, -3, 8), 3))
##      [,1] [,2] [,3]
## [1,]    2    5    1
## [2,]    4    9   -3
## [3,]   -2    6    8
E.12 %*% A6
##      [,1] [,2] [,3]
## [1,]    4    9   -3
## [2,]    2    5    1
## [3,]   -2    6    8
A6[c(2, 1, 3),]
##      [,1] [,2] [,3]
## [1,]    4    9   -3
## [2,]    2    5    1
## [3,]   -2    6    8
A6 %*% E.12
##      [,1] [,2] [,3]
## [1,]    5    2    1
## [2,]    9    4   -3
## [3,]    6   -2    8
A6[, c(2, 1, 3)]
##      [,1] [,2] [,3]
## [1,]    5    2    1
## [2,]    9    4   -3
## [3,]    6   -2    8
  • 4.4.3, 예제 4.12
(R.33.5 <- matrix(c(1, 0, 0, 0, 1, 0, 0, 0, 5), 3))
##      [,1] [,2] [,3]
## [1,]    1    0    0
## [2,]    0    1    0
## [3,]    0    0    5
A6
##      [,1] [,2] [,3]
## [1,]    2    5    1
## [2,]    4    9   -3
## [3,]   -2    6    8
R.33.5 %*% A6
##      [,1] [,2] [,3]
## [1,]    2    5    1
## [2,]    4    9   -3
## [3,]  -10   30   40
A6 %*% R.33.5
##      [,1] [,2] [,3]
## [1,]    2    5    5
## [2,]    4    9  -15
## [3,]   -2    6   40
det(R.33.5)
## [1] 5
  • 예제 4.13
(A7 <- matrix(c(4, 1, 6, 7), 2))
##      [,1] [,2]
## [1,]    4    6
## [2,]    1    7
(A8 <- matrix(c(2, 1, 3, 7), 2))
##      [,1] [,2]
## [1,]    2    3
## [2,]    1    7
det(A7)
## [1] 22
det(A8)
## [1] 11
2*det(A8)
## [1] 22
  • 예제 4.14
(A9 <- matrix(c(1, -3, 5, 0, 1, 2, 9, 0, -1), 3))
##      [,1] [,2] [,3]
## [1,]    1    0    9
## [2,]   -3    1    0
## [3,]    5    2   -1
(A10 <- 3*A9)
##      [,1] [,2] [,3]
## [1,]    3    0   27
## [2,]   -9    3    0
## [3,]   15    6   -3
det(A9)
## [1] -100
det(A10)
## [1] -2700
  • 예제 4.15
(A11 <- matrix(c(-3, 2, 7, 6, -4, 5, 12, -8, 9), 3))
##      [,1] [,2] [,3]
## [1,]   -3    6   12
## [2,]    2   -4   -8
## [3,]    7    5    9
det(A11)
## [1] 1.012523e-13
  • 예제 4.17
(A12 <- matrix(c(6, -1, 2, 3, 4, 5, 0, 7, 9), 3))
##      [,1] [,2] [,3]
## [1,]    6    3    0
## [2,]   -1    4    7
## [3,]    2    5    9
det(A12)
## [1] 75
(A13 <- A12)
##      [,1] [,2] [,3]
## [1,]    6    3    0
## [2,]   -1    4    7
## [3,]    2    5    9
A13[, 1] <- A13[, 1] + (-2)*A13[, 2]
A13
##      [,1] [,2] [,3]
## [1,]    0    3    0
## [2,]   -9    4    7
## [3,]   -8    5    9
det(A13)
## [1] 75
(A14 <- A12[c(3, 2, 1),])
##      [,1] [,2] [,3]
## [1,]    2    5    9
## [2,]   -1    4    7
## [3,]    6    3    0
det(A14)
## [1] -75
  • 한 행의 배수에 다른 행을 더하기
(A15 <- matrix(c(2, 5, 3, 9), 2))
##      [,1] [,2]
## [1,]    2    3
## [2,]    5    9
det(A15)
## [1] 3
(L1 <- matrix(c(1, 0, 2, 1), 2))
##      [,1] [,2]
## [1,]    1    2
## [2,]    0    1
L1 %*% A15
##      [,1] [,2]
## [1,]   12   21
## [2,]    5    9
A16 <- A15
(A16[1, ] <- A15[1, ] + 2*A15[2, ])
## [1] 12 21
A16
##      [,1] [,2]
## [1,]   12   21
## [2,]    5    9
det(A16)
## [1] 3
(L2 <- matrix(c(2, 0, 1, 1), 2))
##      [,1] [,2]
## [1,]    2    1
## [2,]    0    1
L2 %*% A15
##      [,1] [,2]
## [1,]    9   15
## [2,]    5    9
A17 <- A15
(A17[1, ] <- 2*A15[1, ] + A15[2, ])
## [1]  9 15
A17
##      [,1] [,2]
## [1,]    9   15
## [2,]    5    9
det(A17)
## [1] 6

자료 저장

save.image("chapter_4_class.rda")