2017-10-18 81 views
0
{ 
dimensions: 
    grp = 50 ; 
    time = UNLIMITED ; // (0 currently) 
    depth = 3 ; 
    scalar = 1 ; 
    spectral_bands = 2 ; 
    x1AndTime = 13041 ; 
    x2AndTime = 13041 ; 
    midTotoAndTime = 13041 ; 
variables: 
    double time(time) ; 
    double a1(time, hru) ; 
    double a2(time, hru) ; 
    double a3(x1AndTime, hru) ; 
    double a4(x2AndTime, hru) ; 
    double a5(hru) ; 

公開賽在R如何獲得特定維度的netCDF變量列表?

out <- ncdf4::nc_open('test.nc')

的netCDF文件獲取所有的變量

ncvars <- names(out[['var']])

這給我的所有變量在netCDF文件列表。

我怎樣才能得到它們的尺寸timehru,例如變量列表?

擬輸出:

列表與a1, a2

+0

我不知道R,但我可以顯示一個Python解決方案,如果這可能有所幫助。 –

+0

@EricBridger請問, – maximusdooku

回答

0

注意:這是蟒,不屬於R但是示出的邏輯。

import netCDF4 

out = netCDF4.Dataset("test.nc") 
# list of vars w dimenions 'time' and 'hru' 
wanted_vars = [] 

# loop thru all the variables 
for v in out.variables: 
    # this is the name of the variable. 
    print v 
    # variable.dimensions is a tuple of the dimension names for the variable 
    # In R you might need just ('time', 'hru') 
    if out.variables[v].dimensions == (u'time', u'hru'): 
    wanted_vars.append(v) 

print wanted_vars 
+0

呃,問題是關於'R'? – Bart

+0

我問@maximusdooku python是否有幫助。 –

+0

啊,對不起..錯過了。 – Bart

相關問題