# xarray.merge

`xarray.``merge`(objects, compat='no_conflicts', join='outer')

  Merge any number of xarray objects into a single Dataset as variables.

  Parameters:

  objects : Iterable[Union[xarray.Dataset, xarray.DataArray, dict]]

  > Merge together all variables from these objects. If any of them are DataArray objects, they must have a name.

  compat : {‘identical’, ‘equals’, ‘broadcast_equals’,

  > > ‘no_conflicts’}, optional

  > String indicating how to compare variables of the same name for potential conflicts:

  > - ‘broadcast_equals’: all values must be equal when variables are broadcast against each other to ensure common dimensions.
  > - ‘equals’: all values and dimensions must be the same.
  > - ‘identical’: all values, dimensions and attributes must be the same.
  > - ‘no_conflicts’: only values which are not null in both datasets must be equal. The returned dataset then contains the combination of all non-null values.

  join : {‘outer’, ‘inner’, ‘left’, ‘right’, ‘exact’}, optional

  > How to combine objects with different indexes.

  Returns:

  Dataset

  > Dataset with combined variables from each object.

  Raises:

  xarray.MergeError

  > If any variables with the same name have conflicting values.

  See also

  `concat`

  Examples

      >>> arrays = [xr.DataArray(n, name='var%d' % n) for n in range(5)]
      >>> xr.merge(arrays)
      <xarray.Dataset>
      Dimensions:  ()
      Coordinates:
          *empty*
      Data variables:
          var0     int64 0
          var1     int64 1
          var2     int64 2
          var3     int64 3
          var4     int64 4