【发布时间】:2021-09-18 08:56:38
【问题描述】:
我正在尝试将 100 多个 NDBC 浮标 netcdf 数据集(其中每个文件都有关联的纬度和经度)合并到一个 netcdf 数据集中。当我使用cdo 或ncrcat 时,我得到一个组合数据集,但它只获取第一个站NetCDF 文件中的纬度和经度坐标。另外,不确定是否可能,但站名(五位数)在每个站文件的属性中,并且在组合时也会丢失,而我希望以某种方式在组合文件中进行每个单独的站名。
理想情况下,这就是我想要的:
- 完全合并的 NetCDF 文件。
- 所有纬度和经度都与每个站点的变量相对应。
- 以某种方式将一个新数据变量附加到合并的数据集,以读取对每个站 NetCDF 文件有价值的站名属性。
- 时间步长从每 10 分钟、每 30 分钟和每小时变化一次。需要将它们全部对齐,以便每 3 小时重新采样一次并取平均值。
这里是浮标 NetCDF 站数据集之一,看看它的结构:https://dods.ndbc.noaa.gov/thredds/fileServer/data/stdmet/41004/41004h9999.nc
或者,通过 xarray 读取它会产生:
<xarray.Dataset>
Dimensions: (latitude: 1, longitude: 1, time: 48)
Coordinates:
* time (time) datetime64[ns] 2021-04-01T00:50:00 ... 20...
* latitude (latitude) float32 31.4
* longitude (longitude) float32 -80.87
Data variables: (12/13)
wind_dir (time, latitude, longitude) float64 ...
wind_spd (time, latitude, longitude) float32 ...
gust (time, latitude, longitude) float32 ...
wave_height (time, latitude, longitude) float32 ...
dominant_wpd (time, latitude, longitude) timedelta64[ns] ...
average_wpd (time, latitude, longitude) timedelta64[ns] ...
... ...
air_pressure (time, latitude, longitude) float32 ...
air_temperature (time, latitude, longitude) float32 ...
sea_surface_temperature (time, latitude, longitude) float32 ...
dewpt_temperature (time, latitude, longitude) float32 ...
visibility (time, latitude, longitude) float32 ...
water_level (time, latitude, longitude) float32 ...
Attributes:
institution: NOAA National Data Buoy Center and Participators in Data As...
url: http://dods.ndbc.noaa.gov
quality: Automated QC checks with manual editing and comprehensive m...
conventions: COARDS
station: 41008
comment: GRAYS REEF - 40 NM Southeast of Savannah, GA
location: 31.400 N 80.866 W
我曾尝试转换为 pandas 数据帧并写入 hdf5 文件格式,但一旦创建 hdf5,它就不容易操作了。与 xarray 和 netcdf 相比,我也没有太多使用 hdf5 文件的经验(正在重用预制脚本,这就是输出为 hdf5 的原因)。
我尝试了xarray.mf_dataset(),它可以工作,但是当它应该在 100 MB 左右时会生成一个 4 GB+ 的文件,而且我仍然遇到不保留站名属性数据的问题。我更希望在 python 中完成此操作(目前在 Python 中使用 cdo 和 nco 时遇到问题),但也可以从 bash 运行这些命令而不会出现问题。
如果需要更多信息,请告诉我。
【问题讨论】:
标签: python latitude-longitude netcdf cdo-climate nco