8.2 배열 요소 접근
배열 요소의 접근도 행렬의 접근과 유사한 방법으로 할 수 있습니다. 예를 들어 3차원 배열의 경우 [1st.Dim, 2nd.Dim, 3rd.dim ]
와 같이 각 차원을 컴마(,
)로 구분하고 각각에 대하여 정수형 벡터, 문자형 벡터 그리고 논리형 벡터로 접근할 수 있습니다.
## arr.3 배열을 이용하여 배열 요소를 접근해 보겠습니다.
# 정수형 벡터에 의한 접근
.3[1, ,] # 1차원의 1행에 대해 2차원과 3차원의 모든 요소를 출력합니다. 2차원 행렬형태로 반합니다. arr
## Grade
## Level S A B C
## low 11 7 11 7
## middle 10 15 10 15
## high 12 10 12 10
.3[ , 1:2, ] # 1차원 전체(2개 벡터), 2차원 (1,2 벡터), 3차원 전체, 즉 2 X 2 X 4 배열을 반환합니다. arr
## , , Grade = S
##
## Level
## Gender low middle
## male 11 10
## female 9 16
##
## , , Grade = A
##
## Level
## Gender low middle
## male 7 15
## female 19 15
##
## , , Grade = B
##
## Level
## Gender low middle
## male 11 10
## female 9 16
##
## , , Grade = C
##
## Level
## Gender low middle
## male 7 15
## female 19 15
.3[ , , 2:3] # 1차원 전체(2개 벡터), 2차원 (3개 벡터), 3차원 2개 벡터, 즉 2 X 3 X 2 배열을 반환합니다. arr
## , , Grade = A
##
## Level
## Gender low middle high
## male 7 15 10
## female 19 15 7
##
## , , Grade = B
##
## Level
## Gender low middle high
## male 11 10 12
## female 9 16 8
# 문자형 벡터에 의한 접근 (위의 예를 문자형으로 표시해 보겠습니다.)
.3["male", , ] arr
## Grade
## Level S A B C
## low 11 7 11 7
## middle 10 15 10 15
## high 12 10 12 10
.3[ , c("low", "middle"), ] arr
## , , Grade = S
##
## Level
## Gender low middle
## male 11 10
## female 9 16
##
## , , Grade = A
##
## Level
## Gender low middle
## male 7 15
## female 19 15
##
## , , Grade = B
##
## Level
## Gender low middle
## male 11 10
## female 9 16
##
## , , Grade = C
##
## Level
## Gender low middle
## male 7 15
## female 19 15
.3[ , , c("A", "B")] arr
## , , Grade = A
##
## Level
## Gender low middle high
## male 7 15 10
## female 19 15 7
##
## , , Grade = B
##
## Level
## Gender low middle high
## male 11 10 12
## female 9 16 8
# 논리형 벡터에 의한 접근 (마찬가지로 위의 예를 논리형으로 표시해 보겠습니다.)
.3[c(T, F), , ] arr
## Grade
## Level S A B C
## low 11 7 11 7
## middle 10 15 10 15
## high 12 10 12 10
.3[ , c(T, T, F), ] arr
## , , Grade = S
##
## Level
## Gender low middle
## male 11 10
## female 9 16
##
## , , Grade = A
##
## Level
## Gender low middle
## male 7 15
## female 19 15
##
## , , Grade = B
##
## Level
## Gender low middle
## male 11 10
## female 9 16
##
## , , Grade = C
##
## Level
## Gender low middle
## male 7 15
## female 19 15
.3[ , , c(F, T, T, F)] arr
## , , Grade = A
##
## Level
## Gender low middle high
## male 7 15 10
## female 19 15 7
##
## , , Grade = B
##
## Level
## Gender low middle high
## male 11 10 12
## female 9 16 8
8.2.1 배열 요소의 서브 세팅과 수정
배열 요소의 서브 세팅은 배열 요소에 접근한 다음 새로운 변수에 할당하면 이루어 집니다. 그리고 데이터 수정은 수정을 원하는 배열 요소에 접근한 다음 원하는 데이터로 할당 연산자를 이용하여 재할당하면 되는 것입니다.