FeatureSystem ============= .. currentmodule:: tangles.separations .. autoclass:: FeatureSystem .. rubric:: Methods .. toctree:: :hidden: tangles.separations.FeatureSystem.__getitem__ tangles.separations.FeatureSystem.add_corner tangles.separations.FeatureSystem.add_features tangles.separations.FeatureSystem.add_seps tangles.separations.FeatureSystem.all_feature_ids tangles.separations.FeatureSystem.all_sep_ids tangles.separations.FeatureSystem.assemble_meta_info tangles.separations.FeatureSystem.compute_infimum tangles.separations.FeatureSystem.count_big_side tangles.separations.FeatureSystem.crossing_seps tangles.separations.FeatureSystem.feature_and_complement_size tangles.separations.FeatureSystem.feature_metadata tangles.separations.FeatureSystem.feature_size tangles.separations.FeatureSystem.get_corners tangles.separations.FeatureSystem.get_feature_ids tangles.separations.FeatureSystem.get_sep_ids tangles.separations.FeatureSystem.is_le tangles.separations.FeatureSystem.is_nested tangles.separations.FeatureSystem.is_subset tangles.separations.FeatureSystem.metadata_matrix tangles.separations.FeatureSystem.separation_metadata tangles.separations.FeatureSystem.side_counts tangles.separations.FeatureSystem.with_array tangles.separations.FeatureSystem.with_sparse_array .. list-table:: :widths: 50 50 * - :func:`__getitem__` - Get the feature or features as a matrix of indicator columnvectors * - :func:`add_corner` - Calculate the infimum of two features from the feature system and add this infimum as a * - :func:`add_features` - Add features to the feature system * - :func:`add_seps` - Add separations to the separation system * - :func:`all_feature_ids` - Returns * - :func:`all_sep_ids` - Returns * - :func:`assemble_meta_info` - If the user has entered custom meta info for a feature, then that is prioritised before everything else * - :func:`compute_infimum` - Compute the infimum (intersection) of the given list of features * - :func:`count_big_side` - Count the number of data points on the big (positive) side of the given separation * - :func:`crossing_seps` - Generator to get all crossing separations from the list of separations * - :func:`feature_and_complement_size` - Returns * - :func:`feature_metadata` - Return a list of all metadata of the feature `feature_id` * - :func:`feature_size` - Returns * - :func:`get_corners` - Calculate the four corners of two features in the feature system * - :func:`get_feature_ids` - If the features or their inverses are already contained inside of the feature system then return the * - :func:`get_sep_ids` - If the separations are already contained inside of the separation system then return the * - :func:`is_le` - Check if feature :math:`a` specified by `feat_id_a` is less than or equal to feature :math:`b` specified by `feat_id_b`, * - :func:`is_nested` - Check whether two features are nested * - :func:`is_subset` - Check if the feature `feat_id_a` is a subset of the feature `feat_id_b` * - :func:`metadata_matrix` - Explain the meaning of a feature, generated by repeatedly taking corners of features, * - :func:`separation_metadata` - Returns the metadata of the separation `sep_id` * - :func:`side_counts` - Count the number of data points on each side of the separation * - :func:`with_array` - Create a new SetSeparationSystem from a separation matrix * - :func:`with_sparse_array` - Create a new SetSeparationSystem from a sparse separation matrix