IDL/Programming

날짜와 관련된 문제 해결 사례를 소개합니다 (예고)

이상우_IDL 2014. 2. 24. 17:44
728x90

제가 최근에 제 일과 관련해서 작업을 하느라 고민했던 내용에 대하여 소개를 좀 해볼라고 합니다. 바로 근접한 날짜끼리 짝을 짓는 문제인데요. 제가 하는 일의 분야의 성격상 아무래도 태양 관측 이미지들을 다룰 때가 많습니다. 그런데 최근에 이런 문제에 직면한 적이 있습니다. 서로 다른 두 종류의 이미지 데이터 세트가 있습니다. 둘 다 비슷한 기간 동안에 얻어진 데이터입니다. 그런데 두 데이터 각각 관측의 시각이나 주기가 서로 다릅니다. 그런데 이 두 종류의 자료들이 가급적이면 서로 비슷한 시간에 얻어진 경우들끼리 짝을 지어야 합니다. 그 상한선은 5분으로 간주했습니다. 즉, 서로간의 시간 차이가 5분 이하인 두 종류의 데이터 쌍들을 얻어야 하는 문제입니다. 말로만 하면 좀 헷갈릴 것 같은데요. 예를 들면 자료 셋 A와 B의 관측시간들은 각각 다음과 같습니다.


자료셋 A

200208031636

200208031700

200208031712

200208031724

200208031736

200208031800

200208031812

200208031824

200208031836

200208031913

200208031925

200208031936


자료셋 B

200208031559

200208031735

200208031911


여기서 A와 B 자료 사이의 시간 차이가 5분 이내인 쌍들만 찾아내는 것입니다. 물론 눈으로 보면 보입니다. 눈으로 찾은 결과는 다음과 같습니다.

A : 200208031736  -> B : 200208031735

A : 200208031913  -> B : 200208031911


그런데 이런 데이터가 엄청나게 많이 있을 경우에는 이렇게 일일이 눈으로 하지는 못하겠죠. 그러면 프로그래밍에 의하여 해결을 해야 합니다. 어떻게 해야 할까요? 물론 프로그래밍의 세계에서 정답이 단 하나만 있지는 않겠지만, 제가 사용했던 방법을 곧 소개해드리기로 하겠습니다. 오늘은 그냥 티저였고요. 아마 이번 주안에 자세한 내용을 올리게 될 겁니다. 사정이 허락한다면 동영상 강의 형식으로 올려볼 생각이지만, 여의치 않을 경우 그냥 게시물로 할 수도 있습니다. 어쨌든 여러분들도 좋은 방법이 어떤게 있을지 함께 생각을 해보시면 좋을 것 같습니다.


LIST