Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

천선생의 삶

[R] 데이터 유형에 따른 정리(2) - matrix 본문

Data Analysis/R Basic

[R] 데이터 유형에 따른 정리(2) - matrix

천선생 2019. 7. 6. 18:08

안녕하세요. 천선생입니다.

 

 고등학교시절, 기하와 벡터 시간에 만나보셨던 행렬을 기억하시나요?

이 포스트에서는 지난시간에 다룬 vector(https://cheon9.tistory.com/7)에 이어 matrix에 대해 알아보도록 하겠습니다.

 

- MATRIX?

 매트릭스란 동일 데이터 타입을 갖는 2차원 배열을 의미합니다.

 벡터와 같이, 매트릭스는 동일한 데이터 타입을 가져야 합니다!

이는 매트릭스를 다루는 데 있어서, 가장 조심해야 할 부분이기도 합니다.

 

- CODE

 매트릭스를 저장할 때는, matrix 라는 함수를 사용합니다.

이때, 동일한 데이터 타입을 가져야 하므로, 각 원소들을 벡터로 지정한 뒤에 저장하는 것이 편리합니다.

또한, 매트릭스의 모양을 결정하는 부분에 있어서 ncolnrow라는 인자를 설정할 수 있으며,

벡터의 값이 들어가는 방향을 결정함에 있어 가로 / 세로 순서를 byrow 라는 인자로 결정합니다.

 #매트릭스 저장 예제
A <- matrix(1:20, nrow = 4, byrow = T) # nrow가 지정되면, ncol은 자동으로 설정됩니다. (반대상황도 가능)
B <- matrix(letters[1:20], ncol = 5) # 행렬이라는 개념에 빠져서, 수치만 넣는 경우도 있으나 문자도 가능합니다.

 

- INDEXING?

 이번에는 매트릭스에 인덱스를 통하여 접근하는 방법을 알아보겠습니다.

매트리스는 2차원 배열로, 행 / 열 2가지의 인덱스를 갖습니다!

따라서 2종류의 인덱스를 입력해야 하며, 하나를 입력하지 않으면 입력하지 않은 행 / 열의 모든 값에 접근합니다.

#인덱싱 예
A <- matrix(1:15, ncol = 3)
#       [,1] [,2] [,3]
# [1,]    1    6   11
# [2,]    2    7   12
# [3,]    3    8   13
# [4,]    4    9   14
# [5,]    5   10   15
A[1, 3] # (1, 3)에 위치한 값 호출
# 11

A[1] # 1이라는 값을 반환하지만, 올바른 호출방식이 아닙니다.

A[2, ] # 2행에 해당하는 모든 값
# 2 7 12

 

Comments