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.

ncolsint, 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.

colkeysarray of str, optional

An array of the column name to read in. The default is None.

dstypeoptional

The data class to use. The default is Data1D and it is expected to be derived from sherpa.data.BaseData.

Returns:
instance

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

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)