Skip to content

Releases: pydata/xarray

v0.7.1

04 Aug 03:43
Compare
Choose a tag to compare
Version 0.7.1

v0.7.0

04 Aug 03:43
Compare
Choose a tag to compare
Version 0.7.0

v0.6.1

23 Oct 22:29
Compare
Choose a tag to compare

This release contains a number of bug and compatibility fixes, as well as enhancements to plotting, indexing and writing files to disk.

Note that the minimum required version of dask for use with xray is now version 0.6.

  • Faceted plotting through FacetGrid and the plot() method. See Faceting for more details and examples.
  • sel() and reindex() now support the tolerance argument for controlling nearest-neighbor selection (GH629). This feature requires pandas v0.17 or newer.
  • New encoding argument in to_netcdf() for writing netCDF files with compression, as described in the new documentation section on Writing encoded data.
  • Add real and imag attributes to Dataset and DataArray (GH553).
  • More informative error message with from_dataframe() if the frame has duplicate columns.
  • xray now uses deterministic names for dask arrays it creates or opens from disk. This allows xray users to take advantage of dask’s nascent support for caching intermediate computation results. See GH555 for an example.
  • Compatibility with Python 3.5 (GH583).
  • Compatibility with pandas 0.17 (GH569).
  • Compatability with numpy 1.10 (GH618).

See the What's New page for more information. Please report any issues here.

You an install the latest version of xray via conda:

conda install xray

or via pip:

pip install xray

v0.5.1

15 Jun 08:00
Compare
Choose a tag to compare

This minor release fixes a few bugs and an inconsistency with pandas. It also adds the pipe method, copied from pandas.

For more details, see the release notes.

v0.5

15 Jun 07:58
Compare
Choose a tag to compare

Highlights of this release:

  • Support for parallel computation on arrays that don't fit in memory using dask.array (see http://continuum.io/blog/xray-dask for more details)
  • Support for multi-file datasets
  • assign and fillna methods, based on the pandas methods of the same name.
  • to_array and to_dataset methods for easier conversion between xray Dataset and DataArray objects.
  • Label based indexing with nearest neighbor lookups

For more details, see the release notes.

v0.4.1

19 Mar 01:49
Compare
Choose a tag to compare

The release contains bug fixes and several new features. All changes should be fully backwards compatible.

Highlights include:

  • Documentation sections on Time series data and Combining multiple files.
  • resample method for resampling to a new temporal resolution like pandas
  • first and last methods on groupby objects
  • swap_dims method for swapping dimensions
  • Fixed a critical bug with the scipy netCDF backend

For more details, see the release notes

v0.4

03 Mar 18:18
Compare
Choose a tag to compare

This is a major release that includes a number of new features and bug fixes, including several changes from existing behavior.

Highlights include:

  • Automatic alignment of index labels in arithmetic and when combining arrays or datasets.
  • Aggregations like mean now skip missing values by default.
  • Relaxed equality rules in concat and merge for variables with equal value(s) but different shapes.
  • New drop method for dropping variables or index labels.
  • Support for reindexing with a fill method like pandas.

For more details, see the release notes.

v0.4 release candidate

26 Feb 21:58
Compare
Choose a tag to compare
Pre-release

This is a release candidate for v0.4. This version of xray includes some major changes, so I wanted it to get some testing before its official release.

For a list of changes, please read the release notes from the development version of the documentation:
http://xray.readthedocs.org/en/latest/whats-new.html

To test it out, use:

pip install https://github.com/xray/xray/archive/v0.4rc1.zip

v0.3.2

19 Feb 19:39
Compare
Choose a tag to compare

This release focused on bug-fixes, speedups and resolving some niggling inconsistencies.

There are a few cases where the behavior of xray differs from the previous version. However, I expect that in almost all cases your code will continue to run unmodified.

xray now requires pandas v0.15.0 or later. This was necessary for supporting TimedeltaIndex without too many painful hacks.

Backwards incompatible changes:

  • Arrays of datetime.datetime objects are now automatically cast to datetime64[ns] arrays when stored in an xray object, using machinery borrowed from pandas:

    In [1]: from datetime import datetime
    
    In [2]: xray.Dataset({'t': [datetime(2000, 1, 1)]})
    Out[2]: 
    <xray.Dataset>
    Dimensions:  (t: 1)
    Coordinates:
      * t        (t) datetime64[ns] 2000-01-01
    Variables:
        *empty*
    
  • xray now has support (including serialization to netCDF) for pandas.TimedeltaIndex. datetime.timedelta objects are thus accordingly cast to timedelta64[ns] objects when appropriate.

  • Masked arrays are now properly coerced to use NaN as a sentinel value.

Enhancements:

  • Due to popular demand, we have added experimental attribute style access as a shortcut for dataset variables, coordinates and attributes:

    In [3]: ds = xray.Dataset({'tmin': ([], 25, {'units': 'celcius'})})
    
    In [4]: ds.tmin.units
    Out[4]: 'celcius'
    

    Tab-completion for these variables should work in editors such as IPython. However, setting variables or attributes in this fashion is not yet supported because there are some unresolved ambiguities.

  • You can now use a dictionary for indexing with labeled dimensions. This provides a safe way to do assignment with labeled dimensions:

    In [5]: array = xray.DataArray(np.zeros(5), dims=['x'])
    
    In [6]: array[dict(x=slice(3))] = 1
    
    In [7]: array
    Out[7]: 
    <xray.DataArray (x: 5)>
    array([ 1.,  1.,  1.,  0.,  0.])
    Coordinates:
      * x        (x) int64 0 1 2 3 4
    
  • Non-index coordinates can now be faithfully written to and restored from netCDF files. This is done according to CF conventions when possible by using the coordinates attribute on a data variable. When not possible, xray defines a global coordinates attribute.

  • Preliminary support for converting xray.DataArray objects to and from CDAT cdms2 variables.

  • We sped up any operation that involves creating a new Dataset or DataArray (e.g., indexing, aggregation, arithmetic) by a factor of 30 to 50%. The full speed up requires cyordereddict to be installed.

Bug fixes:

  • Fix for to_dataframe() with 0d string/object coordinates
  • Fix for to_netcdf with 0d string variable
  • Fix writing datetime64 arrays to netcdf if NaT is present
  • Fix align silently upcasts data arrays when NaNs are inserted

v0.3.1

23 Oct 06:31
Compare
Choose a tag to compare

This is mostly a bug-fix release to make xray compatible with the latest release of pandas (v0.15).

We added several features to better support working with missing values and exporting xray objects to pandas. We also reorganized the internal API for serializing and deserializing datasets, but this change should be almost entirely transparent to users.

Other than breaking the experimental DataStore API, there should be no backwards incompatible changes.

New features:

  • Added count and dropna methods, copied from pandas, for working with missing values.
  • Added DataArray.to_pandas for
    converting a data array into the pandas object with the same dimensionality
    (1D to Series, 2D to DataFrame, etc.).
  • Support for reading gzipped netCDF3 files.
  • Reduced memory usage when writing netCDF files.
  • 'missing_value' is now supported as an alias for the '_FillValue' attribute
    on netCDF variables.
  • Trivial indexes, equivalent to range(n) where n is the length of the
    dimension, are no longer written to disk.

Bug fixes:

  • Compatibility fixes for pandas v0.15.
  • Fixes for display and indexing of NaT (not-a-time).
  • Fix slicing by label was an argument is a data array.
  • Test data is now shipped with the source distribution.
  • Ensure order does not matter when doing arithmetic with scalar data arrays.
  • Order of dimensions preserved with DataArray.to_dataframe.