Module netCDF4 :: Class MFDataset

Class MFDataset

object --+    
         |    
   Dataset --+
             |
            MFDataset

MFDataset(self, files, check=False, exclude=[])

Class for reading multi-file netCDF Datasets, making variables spanning multiple files appear as if they were in one file.

Datasets must be in NETCDF4_CLASSIC, NETCDF3_CLASSIC or NETCDF3_64BIT format (NETCDF4 Datasets won't work).

Adapted from pycdf by Andre Gosselin.

Example usage:

>>> import numpy
>>> # create a series of netCDF files with a variable sharing
>>> # the same unlimited dimension.
>>> for nfile in range(10):
>>>     f = Dataset('mftest'+repr(nfile)+'.nc','w')
>>>     f.createDimension('x',None)
>>>     x = f.createVariable('x','i',('x',))
>>>     x[0:10] = numpy.arange(nfile*10,10*(nfile+1))
>>>     f.close()
>>> # now read all those files in at once, in one Dataset.
>>> f = MFDataset('mftest*nc')
>>> print f.variables['x'][:]
[ 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99]
Instance Methods
 
__getattribute__(...)
x.__getattribute__('name') <==> x.name
 
__init__()
Open a Dataset spanning multiple files, making it look as if it was a single file.
 
__setattr__(...)
override base class attribute creation
 
__str__(...)
str(x)
 
close(self)
Close the Dataset.
 
ncattrs(self)
return netCDF global attribute names for this Dataset or Group in a list.

Inherited from Dataset: __delattr__, __enter__, __exit__, __getattr__, __new__, createCompoundType, createDimension, createGroup, createVLType, createVariable, delncattr, getncattr, renameDimension, renameVariable, set_fill_off, set_fill_on, setncattr, sync

Inherited from object: __format__, __hash__, __reduce__, __reduce_ex__, __repr__, __sizeof__, __subclasshook__

Instance Variables

Inherited from Dataset: cmptypes, dimensions, file_format, groups, path, variables

Properties

Inherited from Dataset: maskanscale, parent, vltypes

Inherited from object: __class__

Method Details

__getattribute__(...)

 

x.__getattribute__('name') <==> x.name

Overrides: object.__getattribute__
(inherited documentation)

__init__()
(Constructor)

 

Open a Dataset spanning multiple files, making it look as if it was a single file. Variables in the list of files that share the same unlimited dimension are aggregated.

Adapted from pycdf by Andre Gosselin.

Usage:

nc = MFDataset(files, check=False, exclude=[])

Parameters:
  • files - either a sequence of netCDF files or a string with a wildcard (converted to a sorted list of files using glob) The first file in the list will become the "master" file, defining all the record variables (variables with an unlimited dimension) which may span subsequent files. Attribute access returns attributes only from "master" file. The files are always opened in read-only mode.
  • check - True if you want to do consistency checking to ensure the correct variables structure for all of the netcdf files. Checking makes the initialization of the MFDataset instance much slower. Default is False.
  • exclude - A list of variable names to exclude from aggregation. Default is an empty list.
Overrides: object.__init__

__setattr__(...)

 

override base class attribute creation

Overrides: object.__setattr__

__str__(...)
(Informal representation operator)

 

str(x)

Overrides: object.__str__
(inherited documentation)

close(self)

 

Close the Dataset.

Overrides: Dataset.close
(inherited documentation)

ncattrs(self)

 

return netCDF global attribute names for this Dataset or Group in a list.

Overrides: Dataset.ncattrs
(inherited documentation)