corpustools.funcload.functional_load.minpair_fl(corpus_context, segment_pairs, relative_count=True, distinguish_homophones=False, environment_filters=None, prevent_normalization=False, stop_check=None, call_back=None)[source]

Calculate the functional load of the contrast between two segments as a count of minimal pairs.

Begin by creating a representation of each transcription that has collapsed all segment pairs (subject to the environment filter) and creating a dict with these segment-merged representations as keys, with lists of their respective words as values. Minimal pairs are then each pair of words within the list of words with the same segment-merged representation.


corpus_context : CorpusContext

Context manager for a corpus

segment_pairs : list of length-2 tuples of str

The pairs of segments to be conflated.

relative_count : bool, optional

If True, divide the number of minimal pairs by the total count by the total number of words that contain either of the two segments.

distinguish_homophones : bool, optional

If False, then you’ll count sock~shock (sock=clothing) and sock~shock (sock=punch) as just one minimal pair; but if True, you’ll overcount alternative spellings of the same word, e.g. axel~actual and axle~actual. False is the value used by Wedel et al.

environment_filters : list of EnvironmentFilter

Allows the user to restrict the neutralization process to segments in particular segmental contexts

stop_check : callable, optional

Optional function to check whether to gracefully terminate early

call_back : callable, optional

Optional function to supply progress information during the function


tuple(int or float, list)

Tuple of: 0. if relative_count`==False, an int of the raw number of minimal pairs; if `relative_count`==True, a float of that count divided by the total number of words in the corpus that include either `s1 or s2; and 1. list of minimal pairs.