Chapter 7 Matrix
7.1 Matrix 선언
// 값을 지정하지 않고 자료형과 변수만 선언
NumericMatrix A;
// A1 <- matrix(0, nrow = 2, ncol = 2)
NumericMatrix A1(2);
// A2 <- matrix(0, nrow = 2, ncol = 3)
NumericMatrix A2(2, 3);7.2 Matrix 값 접근
Vector와 마찬가지로 matrix에서도 인덱싱과 슬라이싱을 할 수 있지만, 연속적인 위치가 아닌 값들을 동시에 가져오는 것은 불가능하다. 다음의 코드를 확인해보자.
NumericMatrix A(5, 5);
// A[2, 3]
double a11 = A(1, 2);
// A[1, ]
NumericVector row1 = A(0, _);
// 또는
NumericVector row1 = A.row(0);
// A[, 2]
NumericVector col1 = A(_, 1);
// 또는
NumericVector col1 = A.column(1);
// A[1:2, 3:4]
NumericMatrix B = A(Range(0, 1), Range(2, 3));7.3 Matrix 관련 함수
A라는 Matrix 타입의 변수가 있다고 가정하자.
7.3.1 A.nrow(), A.rows()
Matrix A의 행 개수 반환
7.3.2 A.ncol(), A.cols()
Matrix A의 열 개수 반환
7.3.3 A.row(i)
Matrix A의 i번쨰 행 반환 (return 타입은 Vector)
7.3.4 A.col(j)
Matrix A의 j번쨰 열 반환 (return 타입은 Vector)
7.3.5 transpose(A)
Matrix A를 transpose한 Matrix 반환 (return 타입은 Matrix)