자료분석 및 코딩 43

[해양기술사 시험정보] 시험일정, 난이도, 대우 및 전망

이번에는 해양기술사 자격증과 시험일정 및 관련정보에 대해 알아보도록 하겠다. 사실, 작년에 해양기술사를 준비하려 했었는데, 안타깝게 시험일정과 가족행사가 겹쳐서 1년을 미루게 되었다. 그 동안 손을 놓고 있다가 시험일정이 다가와서 기출문제 공부를 하는김에 포스팅까지 진행해보려한다.  | 해양기술사 자격증해양기술사 자격증은 해양산업의 기술적 전문성을 인정받을 수 있는 대표적인 자격증으로, 대한민국의 국가기술자격증 중 하나다. 주로 해양 공학, 조선, 해양 환경과 관련된 고급 기술을 보유한 전문가가 취득하며, 해양 환경과 안전, 해양 개발 등에서 중요한 역할을 맡을 수 있다.  여기까지는 형식적인 정보고, 현업자의 입장에서 해양기술사에 대해 남겨보면, 기업에서는 거의 박사학위급의 대우를 받을 수 있는 자격증..

[파이썬] 해양수치모델 검증 - 1. nc 파일읽기, 특정 지점(위치) 찾기, 최근접 격자 찾기

오늘은 수치예측모델의 정확도를 분석하기 위해 관측정보와 비교하는 과정에 대해 소개해보도록 하겠다. 이를 위해서는 모델자료를 읽고, 관측점에 해당하는 데이터를 추출해야한다. 또한, txt 또는 csv형식의 관측정보를 읽어야 하고, 모델과 관측의 데이터를 동일한 시간간격으로 맞춰줘야 한다.  이번 글에서는 모델자료를 읽는 법과 특정 위치의 데이터만 추출하는 법에 대해 다뤄보도록 하겠다.  | 자료 개요기간 : 2016. 10. 02 ~ 10. 08 (태풍 차바)모델 : HYCOM(해양), RDAPS(기상), RWW3(파랑)관측 : 기상청 서귀포 해양기상부이, 국립해양조사원 서귀포 조위관측소분석항목 : 해양 - 조위, 기상 - 풍속, 파랑 - 파고  분석 샘플로 활용할 자료는 2010년 이후 가장 큰 피해를 ..

kwgrib2를 활용한 기상청 수치모델 grib파일 형식 변환(txt, netcdf)

오늘은 grib 형식으로 되어있는 기상청 수치예측모델을 우리가 익숙한 형식인 txt와 netCDF로 변환하는 방법에 대해 소개해보도록 하겠다. 1. KWGRIB2 개요 기상청에서 생산, 제공하는 한국형수치예보모델, 수치모델 자료는 보통 GRIB2 형식으로 되어 있다. 기상청 자료를 처음 활용하거나 GRIB 형식의 파일을 다뤄보지 않은 사람들에게는 매우 생소한 형식일 텐데, GRIB2 형식 파일을 활용하기 위해서는 kwgrib2 프로그램이 필요하다. kwgrib2는 리눅스 시스템에서 활용할 수 있으며, 기상청 날씨누리에서 해당 파일을 제공한다. 다운로드 링크는 아래 첨부해 두었다. 다운로드 받은 파일은 .tar로 압축되어 있을 텐데 압축을 풀고, 컴파일 하면 된다. 압축을 해제하는 건 해당 파일이 있는 위..

[기타 - CDO] 2. NetCDF 날짜 및 시간 자르기 seltimestep

CDO의 옵션 중 첫번째로 소개할 옵션은 특정 기간을 자르는 seltimestep 이다. 옵션명 그대로 select timestep, 전체 파일 중 특정 timestep을 선택하여 새 파일로 만드는 기능이다. 1. 활용목적 및 활용처 서로 다른 NetCDF 파일을 합치거나 데이터 크기 또는 활용처에 따라 기간을 자를 때 사용한다. 예를들어 서로 다른 모델을 합쳐서 하나의 파일로 병합할 때, 두 nc파일은 차원이 같아야한다. 따라서 time dimension의 길이가 같아야하는데 두 데이터의 time 길이가 다를 때, 동일한 길이로 맞추기 위해 사용한다. 예를 들어, 위와 같은 해양모델(hycom, 좌측 그림)과 파랑모델(cmems, 우측 그림)을 병합한다고 가정해보겠다. 두 모델의 시간간격은 3시간으로 ..

[기타 - CDO] NetCDF 분석 가공 - 1. 수치 모델 및 예측 데이터 처리 프로그램 CDO 개요

최근 가장 자주 활용하는 분석 툴인 CDO에 대해 소개해보려 한다. CDO는 Climate Data Operators의 약자로, 기후 및 수치 기상 예측 데이터를 분석하고 처리하는 명령 연산자 모음이다. NetCDF3, 4와 Grib 형식 및 기타 형식의 데이터 처리 및 가공을 할 수 있는 툴이다. 공식 매뉴얼을 보면, 매우 방대한 기능이 설명되어 있고 페이지도 길지만 나는 주로 netCDF 파일을 처리할 때 활용한다. 따라서, 내가 자주 사용하는, netCDF 파일을 분석할 때 자주 사용하는 큼직큼직한 기능들 위주로 설명을 해보려 한다. 1. 다운로드 및 설치 아래의 공식 페이지에서 다운로드가 가능하다. 버전별로 다운로드가 가능하며 메뉴얼 및 공식 문서들도 모두 확인이 가능하다. https://code..

[기타 - 쉘] 해양수치모델 하이컴 다운로드 3 - 과거 자료 다운로드 자동화

지난글에서는 하이컴 모델 예측자료를 자동으로 다운로드할 수 있는 방법에 대해 설명하고 스크립트를 작성해보았다(아래 링크). 하지만 실질적으로 예측정보를 사용하는 일은 많지 않고, 업무적으로나 연구적으로나 과거정보를 활용하는 경우가 더 많다. 따라서 오늘은 과거자료를 수집하는 스크립트에 대해 작성해보려 한다. https://ihatenumber.tistory.com/97 [기타 - 쉘] 해양수치모델 하이컴 다운로드 2 - 스크립트를 활용한 자동 다운로드. 쉘, wget, crontab 이번에는 지난글에 이어, 스크립트를 통해 하이컴 정보를 수집하는 방법에 대해 소개해보도록 하겠다. 웹페이지에서 바로 다운로드 받는 방법은 짧은 자료나 단기적으로 자료를 활용할 때는 편 ihatenumber.tistory.co..

[기타 - 쉘] 해양수치모델 하이컴 다운로드 2 - 스크립트를 활용한 자동 다운로드. 쉘, wget, crontab

이번에는 지난글에 이어, 스크립트를 통해 하이컴 정보를 수집하는 방법에 대해 소개해보도록 하겠다. 웹페이지에서 바로 다운로드 받는 방법은 짧은 자료나 단기적으로 자료를 활용할 때는 편할수도 있지만, 정기적으로 수집하거나 광범위한 기간을 수집해야 할 경우에는 매우 번거로운 작업이다. 따라서, 이번에는 스크립트를 작성하여 일괄적으로 정보를 수집하는 방법에 대해 알아보도록 하겠다. 1. wget 활용 보통 장기 정보를 수집하거나 정기적으로 정보를 수집할 때는 자료의 크기가 매우 커지게 된다. 또한 이런 경우는 보통 연구 또는 실무적으로 활용하기 위한 경우가 많아 서버에 자료를 수집해두는 경우가 많다. 따라서, 리눅스 운영체제에서 웹페이지의 자료를 다운로드 받는 프로그램인 wget을 활용한다. wget은 web..

[기타 - 쉘] 해양수치모델 하이컴 다운로드 1 - 데이터 개요 및 웹 다운로드

이번에는 가장 널리 활용되는 해양수치모델 중 하나인 하이컴을 다운로드 받는 방법에 대해 알아보겠다. 하이컴에 대한 정보는 다들 잘 알테니 생략하고, 실시간 예측정보는 +7일까지, 해수면 높이, 수온, 염분, 해수유동 등 해양정보에 대한 예측 정보를 제공한다. 오늘은 하이컴에서 제공하는 수치모델의 개요와 웹에서 다운로드 받는 방법에 대해 설명해보도록 하겠다. 나는 주로 과거정보를 자주 활용하지만 실시간 예측이든, 과거 정보든 수집 방법에는 큰 차이가 없으니, 굳이 구분하지 않도록 하겠다. 1. 하이컴 홈페이지 접속 글로벌 영역 GOFS 3.1, NCSS로 다운로드 먼저, 아래 링크의 하이컴 홈페이지에 접속한다. 메인페이지에는 간략한 개요 및 설명들이 있고 좌측 메뉴에 데이터 버전, 영역, 모델별로 메뉴가 ..

[파이썬] 해양수치모델 시간 형식 변환. 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가 된다. 수치모델에서는 이런 줄리안데이 개념..

[파이썬] 해양수치모델 NetCDF 자료처리. 파이썬 Nc 파일 읽기 ncread

지난번에 NetCDF에 대해 알아봤었다. NetCDF의 특성과 차원의 이해, 파일 구조에 대해 간략히 설명했었는데 오늘은 실제 NetCDF(이하 nc)를 파이썬으로 읽어오는 과정에 대해 알아보도록 하겠다. https://ihatenumber.tistory.com/78 [파이썬] 해양수치모델 NetCDF 형식의 이해 해양자료를 다루다보면 꽤나 자주 접하는 데이터형식이 바로 NetCDF이다. 주로 수치모델결과 같은 대용량 수치정보를 저장할 때 쓰이며, txt나 csv같은 비교적 단순한 시계열 정보만 다루던 사람에 ihatenumber.tistory.com 파이썬으로 NetCDF를 분석 & 처리할 때는 netCDF 라이브러리를 활용한다. 매트랩에서는 프로그램 내 내장 함수인 ncinfo, ncread 등을 활..