rnalysis.filtering.CountFilter.majority_vote_intersection
- CountFilter.majority_vote_intersection(*others: Union[Filter, set], majority_threshold: float = 0.5, return_type: Literal['set', 'str'] = 'set')
Returns a set/string of the features that appear in at least (majority_threhold * 100)% of the given Filter objects/sets. Majority-vote intersection with majority_threshold=0 is equivalent to Union. Majority-vote intersection with majority_threshold=1 is equivalent to Intersection.
- Parameters
others (Filter or set objects.) – Objects to calculate intersection with.
return_type ('set' or 'str' (default='set')) – If ‘set’, returns a set of the intersecting WBGene indices. If ‘str’, returns a string of the intersecting indices, delimited by a comma.
majority_threshold (float (default=0.5)) – The threshold that determines what counts as majority. Features will be returned only if they appear in at least (majority_threshold * 100)% of the given Filter objects/sets.
- Return type
set or str
- Returns
If inplace=False, returns a set/string of the features that uphold majority vote intersection between two given Filter objects/sets.
- Examples
>>> from rnalysis import filtering >>> d = filtering.Filter("tests/test_files/test_deseq.csv") >>> a_set = {'WBGene00000001','WBGene00000002','WBGene00000003'} >>> b_set = {'WBGene00000002','WBGene00000004'} >>> # calculate majority-vote intersection and return a set >>> d.majority_vote_intersection(a_set, b_set, majority_threshold=2/3) {'WBGene00000002', 'WBGene00000003', 'WBGene00000004'}