Create a sherpa data object from arrays of data.

The object returned by unpack_arrays can be used in a set_data call.

  • args (array_like) – Arrays of data. The order, and number, is determined by the dstype parameter, and listed in the load_arrays routine.

  • dstype – The data set type. The default is Data1D and values include: Data1D, Data1DInt, Data2D, Data2DInt, DataPHA, and DataIMG. The class is expected to be derived from sherpa.data.BaseData.


The data set object matching the requested dstype parameter.

Return type


See also


Return the data set by identifier.


Create a data set from array values.


Set a data set.


Create a sherpa data object from a file.


Create a 1D (unbinned) data set from the values in the x and y arrays. Use the returned object to create a data set labelled “oned”:

>>> x = [1, 3, 7, 12]
>>> y = [2.3, 3.2, -5.4, 12.1]
>>> dat = unpack_arrays(x, y)
>>> set_data("oned", dat)

Include statistical errors on the data:

>>> edat = unpack_arrays(x, y, dy)

Create a “binned” 1D data set, giving the low, and high edges of the independent axis (xlo and xhi respectively) and the dependent values for this grid (y):

>>> hdat = unpack_arrays(xlo, xhi, y, Data1DInt)

Create a 3 column by 4 row image:

>>> ivals = np.arange(12)
>>> y, x = np.mgrid[0:3, 0:4]
>>> x = x.flatten()
>>> y = y.flatten()
>>> idat = unpack_arrays(x, y, ivals, (3, 4), DataIMG)