簡體   English   中英

僅從 4d NetCDF 文件中提取底部溫度

[英]Extracting only bottom temperature from 4d NetCDF file

我有一個關於海洋溫度的 NetCDF 文件。 它有 1 個變量('temp')和 4 個維度(時間、經度、緯度和深度)。 我想僅在每次、 lon 和 lat 的最大深度處提取溫度,以獲得海底溫度光柵磚。 我願意在終端中使用 R 或使用氣候數據運算符。

NetCDF 文件的屬性

nc_open('data.pre1980.nc')
File data.pre1980.nc (NC_FORMAT_CLASSIC):

     1 variables (excluding dimension variables):
        float temp[lon,lat,depth,time]   
            standard_name: sea_water_temperature
            long_name: TEMPERATURE
            units: Celsius_scale
            _FillValue: -9.98999971057742e+33
            missing_value: -9.98999971057742e+33
            pointwidth: 1

     4 dimensions:
        time  Size:324   *** is unlimited ***
            standard_name: time
            units: months since 1960-01-01
            calendar: 360_day
            axis: T
        lon  Size:440
            standard_name: longitude
            long_name: longitude
            units: degree_east
            axis: X
        lat  Size:179
            standard_name: latitude
            long_name: latitude
            units: degree_north
            axis: Y
        depth  Size:40
            units: meters
            axis: Z
            gridtype: 0

    4 global attributes:
        CDI: Climate Data Interface version 1.9.6 (http://mpimet.mpg.de/cdi)
        Conventions: CF-1.6
        history: Fri Aug 16 13:33:42 2019: cdo merge data.nc data.nc.1 data.nc.2 data.nc.3 data.nc.4 data.nc.5 data.pre1980.nc
        CDO: Climate Data Operators version 1.9.6 (http://mpimet.mpg.de/cdo)

提前致謝!

嘗試士官NCK上帶有負hyperslab

ncks -d depth,-1 in.nc out.nc

不太可能有更簡潔的解決方案。

CDO 確實具有與負索引相同的功能,以表示從文件末尾(時間、高度等)反向計數,因此您還可以執行以下操作:

cdo sellevidx,-1 in.nc out.nc

但是 Charlie 是對的,nco 更簡潔,因為它需要輸入的字符比 cdo 少一個字符,除非您當然希望使用比“depth”更長的垂直坐標名稱的文件來執行此操作,在這種情況下 cdo 獲勝; -)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM