본문 바로가기

파이썬17

[기타 - CDO] 2. NetCDF 날짜 및 시간 자르기 seltimestep CDO의 옵션 중 첫번째로 소개할 옵션은 특정 기간을 자르는 seltimestep 이다. 옵션명 그대로 select timestep, 전체 파일 중 특정 timestep을 선택하여 새 파일로 만드는 기능이다. 1. 활용목적 및 활용처 서로 다른 NetCDF 파일을 합치거나 데이터 크기 또는 활용처에 따라 기간을 자를 때 사용한다. 예를들어 서로 다른 모델을 합쳐서 하나의 파일로 병합할 때, 두 nc파일은 차원이 같아야한다. 따라서 time dimension의 길이가 같아야하는데 두 데이터의 time 길이가 다를 때, 동일한 길이로 맞추기 위해 사용한다. 예를 들어, 위와 같은 해양모델(hycom, 좌측 그림)과 파랑모델(cmems, 우측 그림)을 병합한다고 가정해보겠다. 두 모델의 시간간격은 3시간으로 .. 2023. 8. 18.
[기타 - CDO] NetCDF 분석 가공 - 1. 수치 모델 및 예측 데이터 처리 프로그램 CDO 개요 최근 가장 자주 활용하는 분석 툴인 CDO에 대해 소개해보려 한다. CDO는 Climate Data Operators의 약자로, 기후 및 수치 기상 예측 데이터를 분석하고 처리하는 명령 연산자 모음이다. NetCDF3, 4와 Grib 형식 및 기타 형식의 데이터 처리 및 가공을 할 수 있는 툴이다. 공식 매뉴얼을 보면, 매우 방대한 기능이 설명되어 있고 페이지도 길지만 나는 주로 netCDF 파일을 처리할 때 활용한다. 따라서, 내가 자주 사용하는, netCDF 파일을 분석할 때 자주 사용하는 큼직큼직한 기능들 위주로 설명을 해보려 한다. 1. 다운로드 및 설치 아래의 공식 페이지에서 다운로드가 가능하다. 버전별로 다운로드가 가능하며 메뉴얼 및 공식 문서들도 모두 확인이 가능하다. https://code.. 2023. 8. 17.
[기타 - 쉘] 해양수치모델 하이컴 다운로드 2 - 스크립트를 활용한 자동 다운로드. 쉘, wget, crontab 이번에는 지난글에 이어, 스크립트를 통해 하이컴 정보를 수집하는 방법에 대해 소개해보도록 하겠다. 웹페이지에서 바로 다운로드 받는 방법은 짧은 자료나 단기적으로 자료를 활용할 때는 편할수도 있지만, 정기적으로 수집하거나 광범위한 기간을 수집해야 할 경우에는 매우 번거로운 작업이다. 따라서, 이번에는 스크립트를 작성하여 일괄적으로 정보를 수집하는 방법에 대해 알아보도록 하겠다. 1. wget 활용 보통 장기 정보를 수집하거나 정기적으로 정보를 수집할 때는 자료의 크기가 매우 커지게 된다. 또한 이런 경우는 보통 연구 또는 실무적으로 활용하기 위한 경우가 많아 서버에 자료를 수집해두는 경우가 많다. 따라서, 리눅스 운영체제에서 웹페이지의 자료를 다운로드 받는 프로그램인 wget을 활용한다. wget은 web.. 2023. 7. 31.
[파이썬] 해양수치모델 시간 형식 변환. GMT, UTC, KST, 그리니치, 줄리안 데이 변환 이번에는 수치모델의 시간 형식에 대해 다뤄보도록 하겠다. 여기서 필요한 개념은 줄리안데이(julian day, 율리우스일)와 표준시, 그리고 파이썬의 datetime 라이브러리이다. 1. 줄리안데이 (julian day, 율리우스일) 특정시각을 기준일로부터 시간(일,시,분,초 등) 단위로 계산한 값 줄리안데이란 특정 시점을 나타내기 위해 기준일로부터 매일 1일씩 더하여 나타낸 값(기준일로부터의 일수)이다. 정확한 정의는 율리우스력 BC 4713년 1월 1일부터의 일수인데, 보통 특정 시각을 일수로 표현할 때 줄리안 데이를 쓴다고 표현한다. 예를 들어, 2000년 1월 1일 기준으로 잡고, 1월 5일을 줄리안데이로 나타내면 5개 되며, 1월 5일 12시는 5.5가 된다. 수치모델에서는 이런 줄리안데이 개념.. 2023. 6. 30.