Inventory¶
-
class
corpustools.corpus.classes.lexicon.
Inventory
(data=None)[source]¶ Inventories contain information about a Corpus’ segmental inventory. In many cases, they are similar to FeatureMatrices, but more tailored to a specific corpus. Where a FeatureMatrix would deal in feature specifications, inventories will deal primarily in sets of segments.
Parameters: data : dict, optional
Mapping from segment symbol to Segment objects
Attributes
features (list) List of all features used as specifications for segments possible_values (set) Set of values that segments use for features stresses (dict) Mapping of stress values to segments that bear that stress places (dict) Mapping from place of articulation labels to sets of segments manners (dict) Mapping from manner of articulation labels to sets of segments height (dict) Mapping from vowel height labels to sets of segments backness (dict) Mapping from vowel backness labels to sets of segments vowel_feature (str) Feature value (i.e., ‘+voc’) that separates vowels from consonants voice_feature (str) Feature value (i.e., ‘+voice’) that codes voiced obstruents diph_feature (str) Feature value (i.e., ‘+diphthong’ or ‘.high’) that separates diphthongs from monophthongs rounded_feature (str) Feature value (i.e., ‘+round’) that codes rounded vowels Methods
__init__
([data])categorize
(seg)Categorize a segment into consonant/vowel, place of articulation, manner of articulation, voicing, vowel height, vowel backness, and vowel rounding. features_to_segments
(feature_description)Given a feature description, return the segments in the inventory find_min_feature_pairs
(features[, others])Find sets of segments that differ only in certain features, get_redundant_features
(features[, others])Autodetects redundent features, with the ability to subset items
()keys
()specify
(specifier)Specify segments in the inventory using a FeatureMatrix valid_feature_strings
()Get all combinations of possible_values
andfeatures
values
()-
categorize
(seg)[source]¶ Categorize a segment into consonant/vowel, place of articulation, manner of articulation, voicing, vowel height, vowel backness, and vowel rounding.
For consonants, the category is of the format:
(‘Consonant’, PLACE, MANNER, VOICING)
For vowels, the category is of the format:
(‘Vowel’, HEIGHT, BACKNESS, ROUNDED)
Diphthongs are categorized differently:
(‘Diphthong’, ‘Vowel’)
Parameters: seg : Segment
Segment to categorize
Returns: tuple or None
Returns categories according to the formats above, if any are unable to be calculated, returns None in those places. Returns None if a category cannot be found.
-
features_to_segments
(feature_description)[source]¶ Given a feature description, return the segments in the inventory that match that feature description
Feature descriptions should be either lists, such as [‘+feature1’, ‘-feature2’] or strings that can be separated into lists by ‘,’, such as ‘+feature1,-feature2’.
Parameters: feature_description : string or list
Feature values that specify the segments, see above for format
Returns: list of Segments
Segments that match the feature description
-
find_min_feature_pairs
(features, others=None)[source]¶ Find sets of segments that differ only in certain features, optionally limited by a feature specification
Parameters: features : list
List of features (i.e. ‘back’ or ‘round’)
others : list, optional
Feature specification to limit sets
Returns: dict
Dictionary with keys that correspond to the values of
features
and values that are the set of segments with those feature values
-
get_redundant_features
(features, others=None)[source]¶ Autodetects redundent features, with the ability to subset the segments
Parameters: features : list
List of features to find other features that consistently covary with them
others : list, optional
Feature specification that specifies a subset to look at
Returns: list
List of redundant features
-