scvi.data.fields.CategoricalObsField#

class scvi.data.fields.CategoricalObsField(registry_key, obs_key)[source]#

An AnnDataField for categorical .obs attributes in the AnnData data structure.

Parameters
registry_key : str

Key to register field under in data registry.

obs_key : str | NoneOptional[str]

Key to access the field in the AnnData obs mapping. If None, defaults to registry_key.

Attributes table#

CATEGORICAL_MAPPING_KEY

ORIGINAL_ATTR_KEY

attr_key

The key of the data field within the relevant AnnData attribute.

attr_name

The name of the AnnData attribute where the data is stored.

is_empty

Returns True if the field is empty as a function of its kwargs.

registry_key

The key that is referenced by models via a data loader.

Methods table#

get_data_registry()

Returns a nested dictionary which describes the mapping to the AnnData data field.

get_field_data(adata)

Returns the requested data as determined by the field for a given AnnData object.

get_summary_stats(state_registry)

Returns a dictionary comprising of summary statistics relevant to the field.

register_field(adata)

Sets up the AnnData object and creates a mapping for scvi-tools models to use.

transfer_field(state_registry, adata_target)

Takes an existing scvi-tools setup dictionary and transfers the same setup to the target AnnData.

validate_field(adata)

Validates whether an AnnData object is compatible with this field definition.

view_state_registry(state_registry)

Returns a rich.table.Table summarizing a state registry produced by this field.

Attributes#

CATEGORICAL_MAPPING_KEY#

CategoricalObsField.CATEGORICAL_MAPPING_KEY = 'categorical_mapping'#

ORIGINAL_ATTR_KEY#

CategoricalObsField.ORIGINAL_ATTR_KEY = 'original_key'#

attr_key#

CategoricalObsField.attr_key#
Return type

str

attr_name#

CategoricalObsField.attr_name#
Return type

str

is_empty#

CategoricalObsField.is_empty#
Return type

bool

registry_key#

CategoricalObsField.registry_key#
Return type

str

Methods#

get_data_registry#

CategoricalObsField.get_data_registry()#

Returns a nested dictionary which describes the mapping to the AnnData data field.

The dictionary is of the form {“attr_name”: attr_name, “attr_key”: attr_key}. This mapping is then combined with the mappings of other fields to make up the data registry.

Return type

dict

get_field_data#

CategoricalObsField.get_field_data(adata)#

Returns the requested data as determined by the field for a given AnnData object.

Return type

ndarray | DataFrameUnion[ndarray, DataFrame]

get_summary_stats#

CategoricalObsField.get_summary_stats(state_registry)[source]#

Returns a dictionary comprising of summary statistics relevant to the field.

Parameters
state_registry : dict

Dictionary returned by register_field(). Summary stats should always be a function of information stored in this dictionary.

Return type

dict

Returns

summary_stats_dict The dictionary is of the form {summary_stat_name: summary_stat_value}. This mapping is then combined with the mappings of other fields to make up the summary stats mapping.

register_field#

CategoricalObsField.register_field(adata)[source]#

Sets up the AnnData object and creates a mapping for scvi-tools models to use.

Return type

dict

Returns

dict A dictionary containing any additional state required for scvi-tools models not stored directly on the AnnData object.

transfer_field#

CategoricalObsField.transfer_field(state_registry, adata_target, extend_categories=False, **kwargs)[source]#

Takes an existing scvi-tools setup dictionary and transfers the same setup to the target AnnData.

Used when one is running a pretrained model on a new AnnData object, which requires the mapping from the original data to be applied to the new AnnData object.

Parameters
state_registry : dict

state_registry dictionary created after registering an AnnData using an AnnDataManager object.

adata_target : AnnData

AnnData object that is being registered.

**kwargs

Keyword arguments to modify transfer behavior.

Return type

dict

Returns

dict A dictionary containing any additional state required for scvi-tools models not stored directly on the AnnData object.

validate_field#

CategoricalObsField.validate_field(adata)[source]#

Validates whether an AnnData object is compatible with this field definition.

Return type

None

view_state_registry#

CategoricalObsField.view_state_registry(state_registry)[source]#

Returns a rich.table.Table summarizing a state registry produced by this field.

Parameters
state_registry : dict

Dictionary returned by register_field(). Printed summary should always be a function of information stored in this dictionary.

Return type

Table | NoneOptional[Table]

Returns

state_registry_summary Optional rich.table.Table summarizing the state_registry.