2013-06-26 3 views
3

에 HDF5를 netCDF의 변환하는 가장 쉬운 방법은 무엇입니까하지만 실제로이 작업을 수행하는 방법을 찾는 문제가 있었다 변환. 내가 찾은 유일한 것은 http://www.hdfgroup.org/HDF-FAQ.html#convnetcdf입니다. 여기가 있음을 작성 :는</p> <blockquote> <p>netCDF의 사용자가 HDF5 파일을</p> </blockquote> <p>를 만들 수 있다는 기록이 <a href="http://en.wikipedia.org/wiki/NetCDF" rel="nofollow">Wiki article</a>에서 창

이 Fortner 소프트웨어 에서 ncdf2hdf라는 Windows 실행 파일이 있습니다 (소멸) 변환을 수행하는. 더 이상 사용할 수 없지만 웹 검색을 통해 을 찾을 수 있습니다. 그러나 이 생성하는 HDF 파일은 위의 경로에서 생성 된 파일에서 발견되는 구조의 일부가 부족한 것으로보고되었습니다.

나는 웹상에서이 ncdf2hdf를 찾기가 정말로 어렵다고 언급하지 말아야한다.

지금까지 내가 http://gfesuite.noaa.gov/developer/netCDFPythonInterface.html 또는 https://code.google.com/p/netcdf4-python/으로 netcdf 파일을 읽는 데 파이썬을 사용할 수 있다는 것을 알았지 만 쉬운 방법이 있습니다.

+1

사람들은 종종 다른 방향으로 시도합니다. 그래서 평소 지루한 질문을합니다. 왜 그렇게하고 싶습니까? HDF FAQ 링크를 클릭하면 전환을 수행하는 데 필요한 모든 것이 설명됩니다. 그들이 다른 버전의 동일한 프로그램 인'ncdump/ncgen'에 대해 이야기하고 있다는 사실을 잊지 마십시오. 버전 번호가'hdf_ncgen'인데 – theta

+0

https://code.google.com/p/netcdf4-python/은 완벽합니다. 하지만 unidata의 netcdf 명령 줄 유틸리티 나 좀 더 발전된 nco 운영자 유틸리티를 사용할 수도 있으며 netcdf 데이터를 사용하여 수행 할 수도 있습니다. 어떤 이유로 든 pytables를 사용할 수 있도록 변환을 원한다면 NetCDF와 HDF 간의 변환을 두 번 생각하면 메타 데이터 설명이 느슨해 지므로 데이터를 더 잘 처리 할 수 ​​없게됩니다. – theta

+0

파이썬에서 netcdf를 인터페이스하려는 경우 올바른 도구라고 생각합니다. – theta

답변

8

먼저 파일이 사용중인 netCDF 형식을 확인하십시오. 당신이 netCDF의 시스템에 설치되어있는 경우,이 작업을 수행하는 가장 쉬운 방법은 ncdump 사용하는 것입니다 netCDF-4, 또는 netCDF-4 classic model을 반환 ncdump

ncdump -k foo.nc 

경우 netCDF의-4와 같이, 다음 축하합니다, 당신은 이미 HDF 파일이 NetCDF 데이터 모델은 HDF5를 스토리지 계층으로 사용하여 구현되었습니다. 이 파일들은 HDF 라이브러리 버전 1.8 이상과 pytables에서 알 수 있습니다.

ncdump가 classic 또는 64-bit offset을 반환하면 netCDF-3을 사용 중이며 netCDF-4 (및 HDF)로 변환해야합니다.

nccopy -k 4 foo3.nc foo4c.nc 

가, 자세한 내용은 구체적으로 this 항목을 netCDF FAQ를 참조하십시오 : 좋은 소식은 netCDF의가 설치되어있는 경우, 당신은 아주 쉽게 변환 할 수 있다는 것입니다.

그렇다면 중간 변환없이이 작업을 수행하기 위해 netCDF-4-python을 사용하는 방법을 배울 시간이 충분히 있습니다. (netCDF-4-python이 netCDF- 3 형식 및 대부분의 netCDF-4 파일). netCDF-3은 기상학 커뮤니티 외부에서도 여전히 널리 사용되고 있으며이 여분의 후프는 약간 후에 번거 로움이 될 것입니다. 더 중요한 것은 파일 크기가 매우 큰 경우 변환에 많은 시간이 소요될 수 있다는 것입니다.