a. Ma trận và định thức:
* Khai báo biến ma trận:
Ví dụ khai báo ma trận cỡ 1x3 (vectơ dòng):
> A<-matrix(c(1,2,4), nrow=1) (nhấn enter)
> A (nhấn enter xem ma trận A)
Hay khai báo ma trận cỡ 3x3:
> B<-matrix(c(11,4,20,4,9,8,3,6,9),nrow=3)(nhấn enter)
> B (nhấn enter xem ma trận B)
Hoặc dùng lệnh:
B<-matrix(c(11,4,3,4,9,6,20,8,9),3,3)
Lưu ý là R khai báo ma trận theo CỘT
Hình 1
* Các phép toán trên các phần tử của ma trận:
Khi đã khai báo các biến A và B, ta có thể thực hiện các phép toán cộng, trừ, nhân hai ma trận cùng cấp, lũy thừa, ...
> A+B hoặc > D=A+B(nhấn enter để xem kết quả)
> A*B (nhấn enter để xem kết quả)
> A∧9 (nhấn enter để xem kết quả)
Lưu ý các phép toán này là trên từng phần tử.
Hình 2
* Phép nhân hai ma trận:
> A%*%B (nhấn enter để xem kết quả)
Với A, B là hai ma trận khai báo như ở giao diện phần mềm R dưới đây, ta tính được ma trận AB như hình 3.
Hình 3
* Phép lũy thừa ma trận:
Tạo hàm lũy thừa tên là myfun.
> myfun<-function(X,n){if(n==1) X else {Y<-X; for(i in (2:n)) {X<-X %*% Y}}; X}
Sau đó tính lũy thừa mình muốn.
Ví dụ tính B10.
> myfun(B,10) (nhấn enter để xem kết quả)
* Ma trận chuyển vị:
Ví dụ tính Bt. > t(B) * Tìm hạng của ma trận:
Ví dụ tính r(B). > qr(B)$rank
* Tìm ma trận nghịch đảo:
Ví dụ tính B−1. > solve(B)
* Tính định thức (của ma trận vuông):
Ví dụ tính |B|. > det(B)
Ta được giao diện phần mềm R như hình 4.
b. Hệ phương trình tuyến tính:
* Trước tiên, ta cần cài đặt thư viện matlib:
Chú ý máy tính phải đang kết nối internet. > install.packages("matlib")
Phần mềm sẽ hiện 1 bảng CRAN mirror, bạn chọn 1 cái nào đó rồi OK. Sau đó phải gọi thư viện matlib bằng lệnh sau:
> library(matlib)
* Vậy là sau này:
Mỗi lần chạy R để giải hệ phương trình tuyến tính, bạn không phải cài đặt nữa nhưng vẫn phải gọi thư viện matlib.
Ví dụ 1: Giải hệ phương trình sau: x+y +z = 6 x−y = −1 x+y + 2z = 9 Ta thực hiện: > A<-matrix(c(1,1,1,1,-1,1,1,0,2), nrow=3) > B<-matrix(c(6,-1,9), nrow=3)
> Solve(A, B, verbose = FALSE, fractions = TRUE)
Giao diện phần mềm R như hình 5 và ta hiểu rằng x = x1 = 1, y =
x2 = 2, z = x3 = 3:
Ví dụ 2: Giải hệ phương trình sau: x1 + 2x2 + 4x3 + 6x4 = 1 −2x2 + x3 −x4 = 2 Ta thực hiện: > A<-matrix(c(1,0,2,-2,4,1,6,-1), nrow=2) > B<-matrix(c(1,2), nrow=2)
> Solve(A, B, verbose = FALSE, fractions = TRUE)
Giao diện phần mềm R như hình 6 và ta hiểu rằng:
x1 = 3−5x3 −5x4;x2 = −1 + 1
2x3 − 1
2x4;x3, x4 ∈ R.
CHƯƠNG2
MỘT SỐ ỨNG DỤNG CỦA ĐẠI SỐ TUYẾN TÍNH TRONG KINH TẾ