BaseColumnInfo#

class astropy.utils.data_info.BaseColumnInfo(bound=False)[source]#

Bases: DataInfo

Base info class for anything that can be a column in an astropy Table.

There are at least two classes that inherit from this:

ColumnInfo: for native astropy Column / MaskedColumn objects MixinInfo: for mixin column objects

Note that this class is defined here so that mixins can use it without importing the table package.

Attributes Summary

Methods Summary

adjust_indices(index, value, col_len)

Adjust info indices after column modification.

get_sortable_arrays()

Return a list of arrays which can be lexically sorted to represent the order of the parent column.

iter_str_vals()

This is a mixin-safe version of Column.iter_str_vals.

merge_cols_attributes(cols, ...)

Utility method to merge and validate the attributes attrs for the input table columns cols.

slice_indices(col_slice, item, col_len)

Given a sliced object, modify its indices to correctly represent the slice.

Attributes Documentation

attr_names = {'description', 'dtype', 'format', 'indices', 'meta', 'name', 'parent_table', 'unit'}#
indices#
parent_table#

Methods Documentation

adjust_indices(index, value, col_len)[source]#

Adjust info indices after column modification.

Parameters:
indexslice, int, list, or ndarray

Element(s) of column to modify. This parameter can be a single row number, a list of row numbers, an ndarray of row numbers, a boolean ndarray (a mask), or a column slice.

valueint, list, or ndarray

New value(s) to insert

col_lenint

Length of the column

get_sortable_arrays()[source]#

Return a list of arrays which can be lexically sorted to represent the order of the parent column.

The base method raises NotImplementedError and must be overridden.

Returns:
arrayslist of ndarray
iter_str_vals()[source]#

This is a mixin-safe version of Column.iter_str_vals.

static merge_cols_attributes(cols, metadata_conflicts, name, attrs)[source]#

Utility method to merge and validate the attributes attrs for the input table columns cols.

Note that dtype and shape attributes are handled specially. These should not be passed in attrs but will always be in the returned dict of merged attributes.

Parameters:
colslist

List of input Table column objects

metadata_conflictsstr (‘warn’|’error’|’silent’)

How to handle metadata conflicts

namestr

Output column name

attrslist

List of attribute names to be merged

Returns:
attrsdict

Of merged attributes.

slice_indices(col_slice, item, col_len)[source]#

Given a sliced object, modify its indices to correctly represent the slice.

Parameters:
col_sliceColumn or mixin

Sliced object. If not a column, it must be a valid mixin, see https://docs.astropy.org/en/stable/table/mixin_columns.html

itemslice, list, or ndarray

Slice used to create col_slice

col_lenint

Length of original object