IDLARRAY_INDICES 함수 (다차원 배열 Index 구하기)

관리자
2026-04-09
조회수 93

IDL에서 (아마도 많은 프로그래밍 언어들이) 다차원 배열이라고 해도 내부적으로는 1차원 배열인 것처럼 처리합니다. 

즉, 2차원, 3차원 배열은 사람들이 데이터를 정의할 때 편리한 개념이지만, 프로그래밍 언어의 내부에서는 모두 1차원 배열인 것처럼 처리합니다. 이렇게 하면 속도에도 장점이 있고, 1차원 배열을 처리하는 함수, 2차원 배열을 처리하는 함수, 3차원 배열을 처리하는 함수.... 또는 방법을 따로 생각할 필요가 없는 장점이 있습니다. 

IDL의 소중한 WHERE 함수 같은 경우도 어떤 형태의 배열에서 검색하든지, 리턴값은 1차원 배열입니다. 이 값을 배열에 그대로 적용해도 당연히 작동하지만, 그래도 사람의 머리로 이해하기에는 다시 원래 배열의 차원으로 바꿔 주는 것이 편합니다. 

ARRAY_INDICES 함수는, 1차원 배열인 것처럼 처리 중인 배열 인덱스를, 다차원 배열의 Index로 변환해 줍니다. 

4X3 배열 A에서 A[6]는 A[2, 1] (0번부터 시작합니다)이라고 알려주는 함수입니다. 

851f4decdf3e9.png