unpack_table

sherpa.astro.ui.unpack_table(filename, ncols=2, colkeys=None, dstype=<class 'sherpa.data.Data1D'>)

Unpack a FITS binary file into a data structure.

Parameters:
  • filename – Identify the file to read: a file name, or a data structure representing the data to use, as used by the I/O backend in use by Sherpa: a TABLECrate for crates, as used by CIAO, or a list of AstroPy HDU objects.

  • ncols (int, optional) – The number of columns to read in (the first ncols columns in the file). The meaning of the columns is determined by the dstype parameter.

  • colkeys (array of str, optional) – An array of the column name to read in. The default is None.

  • dstype (optional) – The data class to use. The default is Data1D and it is expected to be derived from sherpa.data.BaseData.

Returns:

The class of the returned object is controlled by the dstype parameter.

Return type:

instance

See also

load_table

Load a FITS binary file as a data set.

set_data

Set a data set.

unpack_ascii

Unpack an ASCII file into a data structure.

Examples

Read in the first two columns of the file, as the independent (X) and dependent (Y) columns of a data set:

>>> d = unpack_table('sources.fits')

Read in the first three columns (the third column is taken to be the error on the dependent variable):

>>> d = unpack_table('sources.fits', ncols=3)

Read in from columns ‘RMID’ and ‘SUR_BRI’:

>>> d = unpack_table('rprof.fits', colkeys=['RMID', 'SUR_BRI'])

The first three columns are taken to be the two independent axes of a two-dimensional data set (x0 and x1) and the dependent value (y):

>>> d = unpack_table('fields.fits', ncols=3,
...                  dstype=Data2D)

When using the Crates I/O library, the file name can include CIAO Data Model syntax, such as column selection. This can also be done using the colkeys parameter, as shown above:

>>> d = unpack_table('rprof.fits[cols rmid,sur_bri,sur_bri_err]',
...                  ncols=3)