Skip to main content
`Ctrl`+`K`

# pandas.Series.to_xarray

Series.to_xarray()

  Return an xarray object from the pandas object.

  Returns:
    xarray.DataArray or xarray.Dataset

      Data in the pandas structure converted to Dataset if the object is a DataFrame, or a DataArray if the object is a Series.

  See also

  `DataFrame.to_hdf`

    Write DataFrame to an HDF5 file.

  `DataFrame.to_parquet`

    Write a DataFrame to the binary parquet format.

  Notes

  See the xarray docs

  Examples

      >>> df = pd.DataFrame([('falcon', 'bird', 389.0, 2),
      ...                    ('parrot', 'bird', 24.0, 2),
      ...                    ('lion', 'mammal', 80.5, 4),
      ...                    ('monkey', 'mammal', np.nan, 4)],
      ...                   columns=['name', 'class', 'max_speed',
      ...                            'num_legs'])
      >>> df
           name   class  max_speed  num_legs
      0  falcon    bird      389.0         2
      1  parrot    bird       24.0         2
      2    lion  mammal       80.5         4
      3  monkey  mammal        NaN         4

      >>> df.to_xarray()
      <xarray.Dataset>
      Dimensions:    (index: 4)
      Coordinates:
        * index      (index) int64 32B 0 1 2 3
      Data variables:
          name       (index) object 32B 'falcon' 'parrot' 'lion' 'monkey'
          class      (index) object 32B 'bird' 'bird' 'mammal' 'mammal'
          max_speed  (index) float64 32B 389.0 24.0 80.5 nan
          num_legs   (index) int64 32B 2 2 4 4

      >>> df['max_speed'].to_xarray()
      <xarray.DataArray 'max_speed' (index: 4)>
      array([389. ,  24. ,  80.5,   nan])
      Coordinates:
        * index    (index) int64 0 1 2 3

      >>> dates = pd.to_datetime(['2018-01-01', '2018-01-01',
      ...                         '2018-01-02', '2018-01-02'])
      >>> df_multiindex = pd.DataFrame({'date': dates,
      ...                               'animal': ['falcon', 'parrot',
      ...                                          'falcon', 'parrot'],
      ...                               'speed': [350, 18, 361, 15]})
      >>> df_multiindex = df_multiindex.set_index(['date', 'animal'])

      >>> df_multiindex
                         speed
      date       animal
      2018-01-01 falcon    350
                 parrot     18
      2018-01-02 falcon    361
                 parrot     15

      >>> df_multiindex.to_xarray()
      <xarray.Dataset>
      Dimensions:  (date: 2, animal: 2)
      Coordinates:
        * date     (date) datetime64[ns] 2018-01-01 2018-01-02
        * animal   (animal) object 'falcon' 'parrot'
      Data variables:
          speed    (date, animal) int64 350 18 361 15