diff --git a/FastOMA/_hog_class.py b/FastOMA/_hog_class.py index ced8d8c..f5d836a 100644 --- a/FastOMA/_hog_class.py +++ b/FastOMA/_hog_class.py @@ -92,21 +92,26 @@ def _hog_implied_losses(hog: "HOG", tree_node: TreeNode) -> int: Mirrors _tax_overlap's _tax_now-based grouping of _subhogs, but sums losses per group member instead of intersecting/folding lineages: a group of sub-hogs sharing the same _tax_now represents a duplication, and each such paralogous copy's losses are counted independently - so that one copy's presence in a species can't mask a sibling copy's loss there.""" + so that one copy's presence in a species can't mask a sibling copy's loss there. + + The sub-hogs' taxonomic levels are looked up by name in `tree_node`'s tree: their `_tax_now` + nodes belong to other tree objects (the pruned working tree, and a separate copy per pickled + level), and ete3 nodes only compare by identity.""" subhogs = getattr(hog, "_subhogs", None) if not subhogs: return 0 + index = _species_name_index(tree_node) losses = 0 clade_groups = {} for sh in subhogs: clade_groups.setdefault(sh._tax_now.name, []).append(sh) - for subhogs_of_clade in clade_groups.values(): - clade_node = subhogs_of_clade[0]._tax_now + for clade_name, subhogs_of_clade in clade_groups.items(): + clade_node = index[clade_name] for sh in subhogs_of_clade: losses += _hog_implied_losses(sh, clade_node) - reached_nodes = [subhogs_of_clade[0]._tax_now for subhogs_of_clade in clade_groups.values()] + reached_nodes = [index[clade_name] for clade_name in clade_groups] losses += _count_untouched_clades(tree_node, reached_nodes) return losses diff --git a/tests/data/fungi30/golden/F0413304.txt b/tests/data/fungi30/golden/F0413304.txt index eba9aca..15f0910 100644 --- a/tests/data/fungi30/golden/F0413304.txt +++ b/tests/data/fungi30/golden/F0413304.txt @@ -1,10 +1,10 @@ # 4 input proteins, 2 groups, 4 proteins in groups -orthologGroup Fungi CompletenessScore=0.0667 ImpliedLosses=2 TCSScore=0.0 - tr|A0A1Y2ETJ6|A0A1Y2ETJ6_9FUNG - tr|A0AA35IW45|A0AA35IW45_SACMI - -orthologGroup Fungi CompletenessScore=0.0667 ImpliedLosses=3 TCSScore=0.0 +orthologGroup Fungi CompletenessScore=0.0667 ImpliedLosses=5 TCSScore=0.0 paralogGroup tr|A0A1Y2AI63|A0A1Y2AI63_9FUNG tr|A0ABQ8PQ38|A0ABQ8PQ38_9FUNG + +orthologGroup Fungi CompletenessScore=0.0667 ImpliedLosses=5 TCSScore=0.0 + tr|A0A1Y2ETJ6|A0A1Y2ETJ6_9FUNG + tr|A0AA35IW45|A0AA35IW45_SACMI diff --git a/tests/data/fungi30/golden/F0453151.txt b/tests/data/fungi30/golden/F0453151.txt index a72b62e..b92660f 100644 --- a/tests/data/fungi30/golden/F0453151.txt +++ b/tests/data/fungi30/golden/F0453151.txt @@ -1,7 +1,7 @@ # 101 input proteins, 1 groups, 86 proteins in groups -orthologGroup Fungi CompletenessScore=0.6667 ImpliedLosses=120 TCSScore=20.314 - orthologGroup Dikarya CompletenessScore=0.6923 ImpliedLosses=118 TCSScore=17.4933 +orthologGroup Fungi CompletenessScore=0.6667 ImpliedLosses=114 TCSScore=20.314 + orthologGroup Dikarya CompletenessScore=0.6923 ImpliedLosses=112 TCSScore=17.4933 orthologGroup Basidiomycota CompletenessScore=0.375 ImpliedLosses=3 TCSScore=2.2 paralogGroup orthologGroup Ustilaginomycotina CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.6667 @@ -12,33 +12,33 @@ orthologGroup Fungi CompletenessScore=0.6667 ImpliedLosses=120 TCSScore=20.314 tr|A0A0F7S400|A0A0F7S400_9BASI tr|M7XCB9|M7XCB9_RHOT1 paralogGroup - orthologGroup Sordariomycetes CompletenessScore=0.4444 ImpliedLosses=4 TCSScore=1.5 - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetes CompletenessScore=0.4444 ImpliedLosses=2 TCSScore=1.5 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A7J6IG66|A0A7J6IG66_COLFN tr|A0AAX4IHJ5|A0AAX4IHJ5_9PEZI orthologGroup Sordariomycetidae CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 tr|A0A2P5HUN9|A0A2P5HUN9_DIAHE tr|A0ABQ8NNB3|A0ABQ8NNB3_PYRGI orthologGroup leotiomyceta CompletenessScore=0.25 ImpliedLosses=8 TCSScore=4.25 - orthologGroup Hypocreales CompletenessScore=0.75 ImpliedLosses=2 TCSScore=0.6667 + orthologGroup Hypocreales CompletenessScore=0.75 ImpliedLosses=1 TCSScore=0.6667 orthologGroup Fusarium CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 tr|A0A395SPL0|A0A395SPL0_FUSSP tr|A0A8H5KVI5|A0A8H5KVI5_GIBSU tr|G9N0Q0|G9N0Q0_HYPVG tr|F2PYR0|F2PYR0_TRIEC - orthologGroup leotiomyceta CompletenessScore=0.9375 ImpliedLosses=101 TCSScore=5.0161 + orthologGroup leotiomyceta CompletenessScore=0.9375 ImpliedLosses=94 TCSScore=5.0161 paralogGroup - orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.4 - orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=3 TCSScore=1.0 - orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=2.4 + orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=1.0 + orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A1L9VRU9|A0A1L9VRU9_ASPGL tr|A0A1V6PLF3|A0A1V6PLF3_PENDC - orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A1B7NX54|A0A1B7NX54_9EURO tr|F2Q0I0|F2Q0I0_TRIEC tr|A0A0D2FPJ6|A0A0D2FPJ6_CLAB1 paralogGroup - orthologGroup Eurotiomycetidae CompletenessScore=0.75 ImpliedLosses=6 TCSScore=0.8 + orthologGroup Eurotiomycetidae CompletenessScore=0.75 ImpliedLosses=5 TCSScore=0.8 paralogGroup tr|A0A1B7NXM4|A0A1B7NXM4_9EURO tr|F2PIH5|F2PIH5_TRIEC @@ -53,19 +53,19 @@ orthologGroup Fungi CompletenessScore=0.6667 ImpliedLosses=120 TCSScore=20.314 tr|F2PM61|F2PM61_TRIEC tr|F2PV36|F2PV36_TRIEC paralogGroup - orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A395S0Z2|A0A395S0Z2_FUSSP tr|A0A8H5P5V9|A0A8H5P5V9_GIBSU tr|A0A9P9JQS6|A0A9P9JQS6_FUSSL - orthologGroup Hypocreales CompletenessScore=0.75 ImpliedLosses=2 TCSScore=1.0 + orthologGroup Hypocreales CompletenessScore=0.75 ImpliedLosses=1 TCSScore=1.0 orthologGroup Fusarium CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 tr|A0A395SR55|A0A395SR55_FUSSP tr|A0A8H5PCB0|A0A8H5PCB0_GIBSU paralogGroup tr|G9MUQ4|G9MUQ4_HYPVG tr|G9MZ61|G9MZ61_HYPVG - orthologGroup Hypocreomycetidae CompletenessScore=0.5 ImpliedLosses=4 TCSScore=0.6667 - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Hypocreomycetidae CompletenessScore=0.5 ImpliedLosses=3 TCSScore=0.6667 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A7J6ID17|A0A7J6ID17_COLFN tr|A0AAX4J184|A0AAX4J184_9PEZI tr|A0A395S871|A0A395S871_FUSSP @@ -82,17 +82,17 @@ orthologGroup Fungi CompletenessScore=0.6667 ImpliedLosses=120 TCSScore=20.314 tr|G9MUY2|G9MUY2_HYPVG tr|G9N4C5|G9N4C5_HYPVG tr|A0ABQ8NPS7|A0ABQ8NPS7_PYRGI - orthologGroup Sordariomycetes CompletenessScore=0.5556 ImpliedLosses=5 TCSScore=3.4 - orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 - orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetes CompletenessScore=0.5556 ImpliedLosses=3 TCSScore=3.4 + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.75 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A395SQY0|A0A395SQY0_FUSSP tr|A0A8H5Q5X1|A0A8H5Q5X1_GIBSU tr|A0A9P9HA30|A0A9P9HA30_FUSSL tr|G9MWP4|G9MWP4_HYPVG tr|A0A2P5IFJ7|A0A2P5IFJ7_DIAHE - orthologGroup Sordariomycetes CompletenessScore=0.6667 ImpliedLosses=6 TCSScore=2.3333 - orthologGroup Hypocreomycetidae CompletenessScore=0.6667 ImpliedLosses=4 TCSScore=1.0 - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetes CompletenessScore=0.6667 ImpliedLosses=3 TCSScore=2.3333 + orthologGroup Hypocreomycetidae CompletenessScore=0.6667 ImpliedLosses=2 TCSScore=1.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0AAX4IDB4|A0AAX4IDB4_9PEZI tr|L2FJK3|L2FJK3_COLFN orthologGroup Hypocreales CompletenessScore=0.5 ImpliedLosses=2 TCSScore=0.0 @@ -122,7 +122,7 @@ orthologGroup Fungi CompletenessScore=0.6667 ImpliedLosses=120 TCSScore=20.314 paralogGroup tr|A0A7C8I9Y5|A0A7C8I9Y5_9PLEO tr|A0A7C8IAS7|A0A7C8IAS7_9PLEO - orthologGroup Fungiincertaesedis CompletenessScore=0.5 ImpliedLosses=1 TCSScore=0.9091 + orthologGroup Fungiincertaesedis CompletenessScore=0.5 ImpliedLosses=2 TCSScore=0.9091 paralogGroup tr|A0A1Y1YU83|A0A1Y1YU83_9FUNG tr|A0A1Y2A814|A0A1Y2A814_9FUNG diff --git a/tests/data/fungi30/golden/F0459413.txt b/tests/data/fungi30/golden/F0459413.txt index 9ef5d78..1a0e939 100644 --- a/tests/data/fungi30/golden/F0459413.txt +++ b/tests/data/fungi30/golden/F0459413.txt @@ -1,15 +1,15 @@ # 26 input proteins, 1 groups, 26 proteins in groups -orthologGroup Dikarya CompletenessScore=0.4615 ImpliedLosses=25 TCSScore=20.6538 - orthologGroup Basidiomycota CompletenessScore=0.25 ImpliedLosses=1 TCSScore=0.6667 +orthologGroup Dikarya CompletenessScore=0.4615 ImpliedLosses=33 TCSScore=20.6538 + orthologGroup Basidiomycota CompletenessScore=0.25 ImpliedLosses=4 TCSScore=0.6667 paralogGroup tr|M7WKC3|M7WKC3_RHOT1 tr|M7XDE6|M7XDE6_RHOT1 tr|A0A067TG69|A0A067TG69_GALM3 paralogGroup - orthologGroup leotiomyceta CompletenessScore=0.4375 ImpliedLosses=7 TCSScore=4.1111 + orthologGroup leotiomyceta CompletenessScore=0.4375 ImpliedLosses=9 TCSScore=4.1111 orthologGroup Sordariomycetes CompletenessScore=0.4444 ImpliedLosses=4 TCSScore=4.0 - orthologGroup Hypocreales CompletenessScore=0.75 ImpliedLosses=2 TCSScore=1.0 + orthologGroup Hypocreales CompletenessScore=0.75 ImpliedLosses=1 TCSScore=1.0 orthologGroup Fusarium CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 tr|A0A8H5NQD1|A0A8H5NQD1_GIBSU tr|A0A9P9KTM1|A0A9P9KTM1_FUSSL @@ -23,16 +23,16 @@ orthologGroup Dikarya CompletenessScore=0.4615 ImpliedLosses=25 TCSScore=20.653 paralogGroup tr|A0A7C8IAK2|A0A7C8IAK2_9PLEO tr|A0A7C8MMZ9|A0A7C8MMZ9_9PLEO - orthologGroup leotiomyceta CompletenessScore=0.5625 ImpliedLosses=16 TCSScore=9.5 + orthologGroup leotiomyceta CompletenessScore=0.5625 ImpliedLosses=18 TCSScore=9.5 paralogGroup - orthologGroup Sordariomycetes CompletenessScore=0.6667 ImpliedLosses=7 TCSScore=7.3333 + orthologGroup Sordariomycetes CompletenessScore=0.6667 ImpliedLosses=6 TCSScore=7.3333 paralogGroup - orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=3 TCSScore=2.2857 + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=2.2857 paralogGroup orthologGroup Fusarium CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 tr|A0A395SGZ3|A0A395SGZ3_FUSSP tr|A0A9P9KT16|A0A9P9KT16_FUSSL - orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.5 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.5 paralogGroup tr|A0A9P9HBT0|A0A9P9HBT0_FUSSL tr|A0A9P9KT27|A0A9P9KT27_FUSSL diff --git a/tests/data/fungi30/golden/F0476910.txt b/tests/data/fungi30/golden/F0476910.txt index 64dde85..46b64f0 100644 --- a/tests/data/fungi30/golden/F0476910.txt +++ b/tests/data/fungi30/golden/F0476910.txt @@ -1,10 +1,10 @@ # 34 input proteins, 1 groups, 33 proteins in groups -orthologGroup Fungi CompletenessScore=0.3667 ImpliedLosses=19 TCSScore=12.1515 +orthologGroup Fungi CompletenessScore=0.3667 ImpliedLosses=38 TCSScore=12.1515 paralogGroup - orthologGroup Dikarya CompletenessScore=0.3077 ImpliedLosses=7 TCSScore=9.0 - orthologGroup leotiomyceta CompletenessScore=0.375 ImpliedLosses=4 TCSScore=1.8571 - orthologGroup Sordariomycetes CompletenessScore=0.3333 ImpliedLosses=2 TCSScore=2.0 + orthologGroup Dikarya CompletenessScore=0.3077 ImpliedLosses=14 TCSScore=9.0 + orthologGroup leotiomyceta CompletenessScore=0.375 ImpliedLosses=6 TCSScore=1.8571 + orthologGroup Sordariomycetes CompletenessScore=0.3333 ImpliedLosses=5 TCSScore=2.0 orthologGroup Fusarium CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 tr|A0A395SBE1|A0A395SBE1_FUSSP tr|A0A9P9R990|A0A9P9R990_FUSSL @@ -33,12 +33,12 @@ orthologGroup Fungi CompletenessScore=0.3667 ImpliedLosses=19 TCSScore=12.1515 tr|A0A0C3CHJ8|A0A0C3CHJ8_HEBCY tr|A0A0C3CIW7|A0A0C3CIW7_HEBCY tr|A0A067STW1|A0A067STW1_GALM3 - orthologGroup leotiomyceta CompletenessScore=0.125 ImpliedLosses=3 TCSScore=0.0 + orthologGroup leotiomyceta CompletenessScore=0.125 ImpliedLosses=5 TCSScore=0.0 tr|A0A164Z8X8|A0A164Z8X8_XYLHT tr|A0A1V6NNK1|A0A1V6NNK1_PENDC orthologGroup leotiomyceta CompletenessScore=0.25 ImpliedLosses=3 TCSScore=4.2 - orthologGroup Eurotiomycetes CompletenessScore=0.6 ImpliedLosses=2 TCSScore=3.0 - orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.6667 + orthologGroup Eurotiomycetes CompletenessScore=0.6 ImpliedLosses=1 TCSScore=3.0 + orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.6667 paralogGroup tr|A0A1L9V458|A0A1L9V458_ASPGL tr|A0A1L9VLC0|A0A1L9VLC0_ASPGL diff --git a/tests/data/fungi30/golden/F0477229.txt b/tests/data/fungi30/golden/F0477229.txt index 838bf74..d69917d 100644 --- a/tests/data/fungi30/golden/F0477229.txt +++ b/tests/data/fungi30/golden/F0477229.txt @@ -1,22 +1,22 @@ # 27 input proteins, 1 groups, 21 proteins in groups -orthologGroup Dikarya CompletenessScore=0.4615 ImpliedLosses=15 TCSScore=16.0476 +orthologGroup Dikarya CompletenessScore=0.4615 ImpliedLosses=17 TCSScore=16.0476 orthologGroup Agaricales CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.6667 paralogGroup tr|A0A067S4V6|A0A067S4V6_GALM3 tr|A0A067T8Z9|A0A067T8Z9_GALM3 tr|A0A0C3CZU8|A0A0C3CZU8_HEBCY - orthologGroup leotiomyceta CompletenessScore=0.625 ImpliedLosses=13 TCSScore=6.1111 - orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.75 + orthologGroup leotiomyceta CompletenessScore=0.625 ImpliedLosses=11 TCSScore=6.1111 + orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.75 paralogGroup tr|F2PXP9|F2PXP9_TRIEC tr|F2PYJ4|F2PYJ4_TRIEC tr|F2Q4D0|F2Q4D0_TRIEC tr|A0A1B7P4W4|A0A1B7P4W4_9EURO paralogGroup - orthologGroup Sordariomycetes CompletenessScore=0.6667 ImpliedLosses=5 TCSScore=4.1 - orthologGroup Hypocreomycetidae CompletenessScore=0.6667 ImpliedLosses=3 TCSScore=2.25 - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.8333 + orthologGroup Sordariomycetes CompletenessScore=0.6667 ImpliedLosses=3 TCSScore=4.1 + orthologGroup Hypocreomycetidae CompletenessScore=0.6667 ImpliedLosses=2 TCSScore=2.25 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.8333 paralogGroup tr|A0A7J6ICM4|A0A7J6ICM4_COLFN tr|A0A7J6IHN8|A0A7J6IHN8_COLFN @@ -24,7 +24,7 @@ orthologGroup Dikarya CompletenessScore=0.4615 ImpliedLosses=15 TCSScore=16.047 tr|A0A7J6JBZ8|A0A7J6JBZ8_COLFN tr|L2GDX0|L2GDX0_COLFN tr|A0AAX4I0N0|A0AAX4I0N0_9PEZI - orthologGroup Hypocreales CompletenessScore=0.5 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Hypocreales CompletenessScore=0.5 ImpliedLosses=2 TCSScore=0.0 tr|A0A9P9JYY1|A0A9P9JYY1_FUSSL tr|G9MTS0|G9MTS0_HYPVG orthologGroup Sordariomycetidae CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 diff --git a/tests/data/fungi30/golden/F0478382.txt b/tests/data/fungi30/golden/F0478382.txt index 0519f65..233c409 100644 --- a/tests/data/fungi30/golden/F0478382.txt +++ b/tests/data/fungi30/golden/F0478382.txt @@ -1,7 +1,7 @@ # 4 input proteins, 1 groups, 3 proteins in groups -orthologGroup leotiomyceta CompletenessScore=0.1875 ImpliedLosses=2 TCSScore=1.3333 - orthologGroup Hypocreomycetidae CompletenessScore=0.3333 ImpliedLosses=1 TCSScore=0.0 +orthologGroup leotiomyceta CompletenessScore=0.1875 ImpliedLosses=7 TCSScore=1.3333 + orthologGroup Hypocreomycetidae CompletenessScore=0.3333 ImpliedLosses=4 TCSScore=0.0 tr|A0A8H5V9V0|A0A8H5V9V0_GIBSU tr|A0AAX4IL06|A0AAX4IL06_9PEZI tr|A0A7C8ICJ0|A0A7C8ICJ0_9PLEO diff --git a/tests/data/fungi30/golden/F0480898.txt b/tests/data/fungi30/golden/F0480898.txt index 6f11392..b516cc5 100644 --- a/tests/data/fungi30/golden/F0480898.txt +++ b/tests/data/fungi30/golden/F0480898.txt @@ -1,8 +1,8 @@ # 24 input proteins, 1 groups, 24 proteins in groups -orthologGroup leotiomyceta CompletenessScore=0.625 ImpliedLosses=21 TCSScore=6.5833 +orthologGroup leotiomyceta CompletenessScore=0.625 ImpliedLosses=19 TCSScore=6.5833 paralogGroup - orthologGroup Eurotiomycetidae CompletenessScore=0.5 ImpliedLosses=1 TCSScore=1.5 + orthologGroup Eurotiomycetidae CompletenessScore=0.5 ImpliedLosses=2 TCSScore=1.5 paralogGroup tr|A0A1L9V4W9|A0A1L9V4W9_ASPGL tr|A0A1L9V7S2|A0A1L9V7S2_ASPGL @@ -12,31 +12,31 @@ orthologGroup leotiomyceta CompletenessScore=0.625 ImpliedLosses=21 TCSScore=6. paralogGroup orthologGroup Sordariomycetes CompletenessScore=0.3333 ImpliedLosses=7 TCSScore=2.8 paralogGroup - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A7J6JGH0|A0A7J6JGH0_COLFN tr|A0AAX4I0Q8|A0AAX4I0Q8_9PEZI tr|L2FWK4|L2FWK4_COLFN paralogGroup tr|A0ABQ8NRX1|A0ABQ8NRX1_PYRGI tr|A0ABQ8NYR1|A0ABQ8NYR1_PYRGI - orthologGroup Sordariomycetes CompletenessScore=0.7778 ImpliedLosses=8 TCSScore=3.9091 - orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetes CompletenessScore=0.7778 ImpliedLosses=3 TCSScore=3.9091 + orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A2P5I609|A0A2P5I609_DIAHE tr|A0ABQ8NGB4|A0ABQ8NGB4_PYRGI tr|V5IKJ7|V5IKJ7_NEUCR paralogGroup - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A7J6J4I6|A0A7J6J4I6_COLFN tr|A0AAX4I0H8|A0AAX4I0H8_9PEZI - orthologGroup Hypocreomycetidae CompletenessScore=0.6667 ImpliedLosses=4 TCSScore=2.0 + orthologGroup Hypocreomycetidae CompletenessScore=0.6667 ImpliedLosses=2 TCSScore=2.0 orthologGroup Fusarium CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 tr|A0A8H5Q8E8|A0A8H5Q8E8_GIBSU tr|A0A9P9L841|A0A9P9L841_FUSSL paralogGroup - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0AAX4ICN6|A0AAX4ICN6_9PEZI tr|L2FCD7|L2FCD7_COLFN - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0AAX4ITE2|A0AAX4ITE2_9PEZI tr|L2FSM0|L2FSM0_COLFN tr|A0A7J6J952|A0A7J6J952_COLFN diff --git a/tests/data/fungi30/golden/F0489906.txt b/tests/data/fungi30/golden/F0489906.txt index 7ec79fa..d6f20ea 100644 --- a/tests/data/fungi30/golden/F0489906.txt +++ b/tests/data/fungi30/golden/F0489906.txt @@ -1,10 +1,10 @@ # 6 input proteins, 1 groups, 6 proteins in groups -orthologGroup Dikarya CompletenessScore=0.1923 ImpliedLosses=5 TCSScore=8.1667 +orthologGroup Dikarya CompletenessScore=0.1923 ImpliedLosses=23 TCSScore=8.1667 paralogGroup - orthologGroup leotiomyceta CompletenessScore=0.25 ImpliedLosses=3 TCSScore=1.75 + orthologGroup leotiomyceta CompletenessScore=0.25 ImpliedLosses=9 TCSScore=1.75 orthologGroup Eurotiomycetes CompletenessScore=0.6 ImpliedLosses=2 TCSScore=0.6667 - orthologGroup Eurotiomycetidae CompletenessScore=0.5 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Eurotiomycetidae CompletenessScore=0.5 ImpliedLosses=2 TCSScore=0.0 tr|A0A1B7NPW6|A0A1B7NPW6_9EURO tr|A0A1L9VKP1|A0A1L9VKP1_ASPGL tr|A0A0D2ESI3|A0A0D2ESI3_CLAB1 diff --git a/tests/data/fungi30/golden/F0848191.txt b/tests/data/fungi30/golden/F0848191.txt index 4b35b7a..f2efa2e 100644 --- a/tests/data/fungi30/golden/F0848191.txt +++ b/tests/data/fungi30/golden/F0848191.txt @@ -1,52 +1,52 @@ # 175 input proteins, 4 groups, 167 proteins in groups -orthologGroup Fungi CompletenessScore=0.7333 ImpliedLosses=32 TCSScore=22.3611 - orthologGroup Dikarya CompletenessScore=0.7308 ImpliedLosses=28 TCSScore=18.8387 - orthologGroup Ascomycota CompletenessScore=1.0 ImpliedLosses=25 TCSScore=13.6333 - orthologGroup saccharomyceta CompletenessScore=1.0 ImpliedLosses=24 TCSScore=9.1034 +orthologGroup Fungi CompletenessScore=0.7333 ImpliedLosses=14 TCSScore=22.3611 + orthologGroup Dikarya CompletenessScore=0.7308 ImpliedLosses=12 TCSScore=18.8387 + orthologGroup Ascomycota CompletenessScore=1.0 ImpliedLosses=9 TCSScore=13.6333 + orthologGroup saccharomyceta CompletenessScore=1.0 ImpliedLosses=9 TCSScore=9.1034 paralogGroup - orthologGroup Sordariomycetes CompletenessScore=0.3333 ImpliedLosses=4 TCSScore=1.3333 - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetes CompletenessScore=0.3333 ImpliedLosses=3 TCSScore=1.3333 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0AAX4I2Q2|A0AAX4I2Q2_9PEZI tr|L2FU61|L2FU61_COLFN tr|A0A2P5HLA9|A0A2P5HLA9_DIAHE - orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=6 TCSScore=3.3333 - orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.0 - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=3.3333 + orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=2.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0AAX4I2R5|A0AAX4I2R5_9PEZI tr|L2G588|L2G588_COLFN - orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 - orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.75 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A395SEL3|A0A395SEL3_FUSSP tr|A0A8H5PFR4|A0A8H5PFR4_GIBSU tr|A0A9P9RCW9|A0A9P9RCW9_FUSSL tr|G9N6T3|G9N6T3_HYPVG - orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A2P5HL47|A0A2P5HL47_DIAHE tr|Q7S836|Q7S836_NEUCR tr|Q96UW1|Q96UW1_PYRGI - orthologGroup leotiomyceta CompletenessScore=1.0 ImpliedLosses=11 TCSScore=5.125 - orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.4 - orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=3 TCSScore=1.0 - orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup leotiomyceta CompletenessScore=1.0 ImpliedLosses=0 TCSScore=5.125 + orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=2.4 + orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=1.0 + orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A1L9VYU4|A0A1L9VYU4_ASPGL tr|A0A1V6P8M2|A0A1V6P8M2_PENDC - orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A1B7NPZ8|A0A1B7NPZ8_9EURO tr|F2PUU8|F2PUU8_TRIEC tr|A0A0D2ELH6|A0A0D2ELH6_CLAB1 - orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=6 TCSScore=3.3333 - orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.0 - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=3.3333 + orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=2.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0AAX4I8K4|A0AAX4I8K4_9PEZI tr|L2FXL1|L2FXL1_COLFN - orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 - orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.75 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A395RLI0|A0A395RLI0_FUSSP tr|A0A8H5UZ13|A0A8H5UZ13_GIBSU tr|A0A9P9HJ80|A0A9P9HJ80_FUSSL tr|G9MGW2|G9MGW2_HYPVG - orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A2P5I8E1|A0A2P5I8E1_DIAHE tr|A0ABQ8N4J5|A0ABQ8N4J5_PYRGI tr|Q7S7W1|Q7S7W1_NEUCR @@ -55,7 +55,7 @@ orthologGroup Fungi CompletenessScore=0.7333 ImpliedLosses=32 TCSScore=22.3611 tr|A0AA35IRL9|A0AA35IRL9_SACMI sp|Q9UT43|ATC8_SCHPO tr|A0AAW0G776|A0AAW0G776_9APHY - orthologGroup Fungiincertaesedis CompletenessScore=0.75 ImpliedLosses=3 TCSScore=1.2 + orthologGroup Fungiincertaesedis CompletenessScore=0.75 ImpliedLosses=2 TCSScore=1.2 paralogGroup tr|A0A1Y1ZPJ8|A0A1Y1ZPJ8_9FUNG tr|A0A1Y2B225|A0A1Y2B225_9FUNG @@ -64,32 +64,32 @@ orthologGroup Fungi CompletenessScore=0.7333 ImpliedLosses=32 TCSScore=22.3611 tr|A0ABN7UHV8|A0ABN7UHV8_GIGMA tr|A0ABQ8PV12|A0ABQ8PV12_9FUNG -orthologGroup Fungi CompletenessScore=0.9667 ImpliedLosses=22 TCSScore=15.2188 - orthologGroup Dikarya CompletenessScore=0.9615 ImpliedLosses=19 TCSScore=13.2 - orthologGroup Ascomycota CompletenessScore=1.0 ImpliedLosses=13 TCSScore=11.7222 - orthologGroup saccharomyceta CompletenessScore=1.0 ImpliedLosses=12 TCSScore=8.1176 - orthologGroup leotiomyceta CompletenessScore=1.0 ImpliedLosses=11 TCSScore=5.125 - orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.4 - orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=3 TCSScore=1.0 - orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 +orthologGroup Fungi CompletenessScore=0.9667 ImpliedLosses=1 TCSScore=15.2188 + orthologGroup Dikarya CompletenessScore=0.9615 ImpliedLosses=1 TCSScore=13.2 + orthologGroup Ascomycota CompletenessScore=1.0 ImpliedLosses=0 TCSScore=11.7222 + orthologGroup saccharomyceta CompletenessScore=1.0 ImpliedLosses=0 TCSScore=8.1176 + orthologGroup leotiomyceta CompletenessScore=1.0 ImpliedLosses=0 TCSScore=5.125 + orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=2.4 + orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=1.0 + orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A1L9VMD5|A0A1L9VMD5_ASPGL tr|A0A1V6PLY2|A0A1V6PLY2_PENDC - orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A1B7P7I3|A0A1B7P7I3_9EURO tr|F2PM24|F2PM24_TRIEC tr|A0A0D2IQY6|A0A0D2IQY6_CLAB1 - orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=6 TCSScore=3.3333 - orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.0 - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=3.3333 + orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=2.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A7J6J338|A0A7J6J338_COLFN tr|A0AAX4HZ44|A0AAX4HZ44_9PEZI - orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 - orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.75 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A395SAR2|A0A395SAR2_FUSSP tr|A0A8H5PDA4|A0A8H5PDA4_GIBSU tr|A0A9P9L1T3|A0A9P9L1T3_FUSSL tr|G9MMK6|G9MMK6_HYPVG - orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A2P5IDA2|A0A2P5IDA2_DIAHE tr|A0ABQ8P235|A0ABQ8P235_PYRGI tr|Q7RZL3|Q7RZL3_NEUCR @@ -97,19 +97,19 @@ orthologGroup Fungi CompletenessScore=0.9667 ImpliedLosses=22 TCSScore=15.2188 tr|A0A7C8MRI7|A0A7C8MRI7_9PLEO tr|A0AA35IX53|A0AA35IX53_SACMI sp|O94296|ATC3_SCHPO - orthologGroup Basidiomycota CompletenessScore=0.875 ImpliedLosses=5 TCSScore=1.7143 - orthologGroup Agaricomycetes CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 - orthologGroup Agaricales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Basidiomycota CompletenessScore=0.875 ImpliedLosses=1 TCSScore=1.7143 + orthologGroup Agaricomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.75 + orthologGroup Agaricales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A067SYV3|A0A067SYV3_GALM3 tr|A0A0C3C8P4|A0A0C3C8P4_HEBCY tr|B0D0Z2|B0D0Z2_LACBS tr|A0AAW0GDM5|A0AAW0GDM5_9APHY - orthologGroup Ustilaginomycotina CompletenessScore=0.6667 ImpliedLosses=2 TCSScore=0.0 + orthologGroup Ustilaginomycotina CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 tr|A0A0F7S3X1|A0A0F7S3X1_9BASI tr|A0A316UVR8|A0A316UVR8_9BASI tr|M7XXB6|M7XXB6_RHOT1 - orthologGroup Fungiincertaesedis CompletenessScore=1.0 ImpliedLosses=2 TCSScore=1.4286 - orthologGroup Mucoromycota CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.6667 + orthologGroup Fungiincertaesedis CompletenessScore=1.0 ImpliedLosses=0 TCSScore=1.4286 + orthologGroup Mucoromycota CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.6667 paralogGroup tr|A0AAD7V2H0|A0AAD7V2H0_9FUNG tr|A0AAD7XWI9|A0AAD7XWI9_9FUNG @@ -120,32 +120,32 @@ orthologGroup Fungi CompletenessScore=0.9667 ImpliedLosses=22 TCSScore=15.2188 tr|A0A1Y2FFW8|A0A1Y2FFW8_9FUNG tr|A0ABQ8PU82|A0ABQ8PU82_9FUNG -orthologGroup Fungi CompletenessScore=1.0 ImpliedLosses=28 TCSScore=13.175 - orthologGroup Dikarya CompletenessScore=1.0 ImpliedLosses=19 TCSScore=12.6071 - orthologGroup Ascomycota CompletenessScore=1.0 ImpliedLosses=13 TCSScore=11.7222 - orthologGroup saccharomyceta CompletenessScore=1.0 ImpliedLosses=12 TCSScore=8.1176 - orthologGroup leotiomyceta CompletenessScore=1.0 ImpliedLosses=11 TCSScore=5.125 - orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.4 - orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=3 TCSScore=1.0 - orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 +orthologGroup Fungi CompletenessScore=1.0 ImpliedLosses=12 TCSScore=13.175 + orthologGroup Dikarya CompletenessScore=1.0 ImpliedLosses=0 TCSScore=12.6071 + orthologGroup Ascomycota CompletenessScore=1.0 ImpliedLosses=0 TCSScore=11.7222 + orthologGroup saccharomyceta CompletenessScore=1.0 ImpliedLosses=0 TCSScore=8.1176 + orthologGroup leotiomyceta CompletenessScore=1.0 ImpliedLosses=0 TCSScore=5.125 + orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=2.4 + orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=1.0 + orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A1L9VD89|A0A1L9VD89_ASPGL tr|A0A1V6PG37|A0A1V6PG37_PENDC - orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A1B7P7T3|A0A1B7P7T3_9EURO tr|F2PZY6|F2PZY6_TRIEC tr|A0A0D2GF51|A0A0D2GF51_CLAB1 - orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=6 TCSScore=3.3333 - orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.0 - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=3.3333 + orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=2.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0AAX4I8R9|A0AAX4I8R9_9PEZI tr|L2G5Z9|L2G5Z9_COLFN - orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 - orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.75 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A395SM71|A0A395SM71_FUSSP tr|A0A8H5PY59|A0A8H5PY59_GIBSU tr|A0A9P9KN43|A0A9P9KN43_FUSSL tr|G9MH84|G9MH84_HYPVG - orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A2P5IDQ5|A0A2P5IDQ5_DIAHE tr|A0ABQ8NXB0|A0ABQ8NXB0_PYRGI tr|Q1K7F7|Q1K7F7_NEUCR @@ -153,17 +153,17 @@ orthologGroup Fungi CompletenessScore=1.0 ImpliedLosses=28 TCSScore=13.175 tr|A0A7C8MF34|A0A7C8MF34_9PLEO tr|A0AA35J0Z5|A0AA35J0Z5_SACMI sp|Q10309|ATC7_SCHPO - orthologGroup Basidiomycota CompletenessScore=1.0 ImpliedLosses=5 TCSScore=2.4 - orthologGroup Agaricomycetes CompletenessScore=1.0 ImpliedLosses=2 TCSScore=1.0 - orthologGroup Agaricales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Basidiomycota CompletenessScore=1.0 ImpliedLosses=0 TCSScore=2.4 + orthologGroup Agaricomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=1.0 + orthologGroup Agaricales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A067TE99|A0A067TE99_GALM3 tr|A0A0C3C0S6|A0A0C3C0S6_HEBCY tr|B0DWL6|B0DWL6_LACBS paralogGroup tr|A0AAW0FB63|A0AAW0FB63_9APHY tr|A0AAW0G052|A0AAW0G052_9APHY - orthologGroup Ustilaginomycotina CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.6667 - orthologGroup Exobasidiomycetes CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Ustilaginomycotina CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.6667 + orthologGroup Exobasidiomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A0P1BME0|A0A0P1BME0_9BASI tr|A0A316ULH2|A0A316ULH2_9BASI tr|A0A0F7S4M1|A0A0F7S4M1_9BASI @@ -171,8 +171,8 @@ orthologGroup Fungi CompletenessScore=1.0 ImpliedLosses=28 TCSScore=13.175 tr|M7WHX4|M7WHX4_RHOT1 tr|M7XR38|M7XR38_RHOT1 paralogGroup - orthologGroup Fungiincertaesedis CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.8333 - orthologGroup Mucoromycota CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Fungiincertaesedis CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.8333 + orthologGroup Mucoromycota CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0AAD7UTJ8|A0AAD7UTJ8_9FUNG tr|A0ABN7UYE4|A0ABN7UYE4_GIGMA paralogGroup @@ -187,11 +187,11 @@ orthologGroup Fungi CompletenessScore=1.0 ImpliedLosses=28 TCSScore=13.175 tr|A0A1Y2E329|A0A1Y2E329_9FUNG tr|A0A1Y2E5M3|A0A1Y2E5M3_9FUNG -orthologGroup Fungi CompletenessScore=1.0 ImpliedLosses=44 TCSScore=12.7797 +orthologGroup Fungi CompletenessScore=1.0 ImpliedLosses=25 TCSScore=12.7797 paralogGroup - orthologGroup Basidiomycota CompletenessScore=1.0 ImpliedLosses=8 TCSScore=2.5455 - orthologGroup Ustilaginomycotina CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.6667 - orthologGroup Exobasidiomycetes CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Basidiomycota CompletenessScore=1.0 ImpliedLosses=3 TCSScore=2.5455 + orthologGroup Ustilaginomycotina CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.6667 + orthologGroup Exobasidiomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A0P1BQC6|A0A0P1BQC6_9BASI tr|A0A316UXC2|A0A316UXC2_9BASI tr|A0A0F7RS93|A0A0F7RS93_9BASI @@ -199,39 +199,39 @@ orthologGroup Fungi CompletenessScore=1.0 ImpliedLosses=44 TCSScore=12.7797 orthologGroup Agaricales CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 tr|A0A067T192|A0A067T192_GALM3 tr|A0A0C2YFW7|A0A0C2YFW7_HEBCY - orthologGroup Agaricomycetes CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 - orthologGroup Agaricales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Agaricomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.75 + orthologGroup Agaricales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A067SUC6|A0A067SUC6_GALM3 tr|A0A0C3CJ14|A0A0C3CJ14_HEBCY tr|B0DQ40|B0DQ40_LACBS tr|A0AAW0GKU4|A0AAW0GKU4_9APHY tr|A0AAW0GN29|A0AAW0GN29_9APHY tr|M7WXI4|M7WXI4_RHOT1 - orthologGroup Dikarya CompletenessScore=0.9615 ImpliedLosses=22 TCSScore=13.0667 - orthologGroup Ascomycota CompletenessScore=1.0 ImpliedLosses=13 TCSScore=11.3333 - orthologGroup saccharomyceta CompletenessScore=1.0 ImpliedLosses=12 TCSScore=8.1053 - orthologGroup leotiomyceta CompletenessScore=1.0 ImpliedLosses=11 TCSScore=5.3529 - orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.4 - orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=3 TCSScore=1.0 - orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Dikarya CompletenessScore=0.9615 ImpliedLosses=5 TCSScore=13.0667 + orthologGroup Ascomycota CompletenessScore=1.0 ImpliedLosses=0 TCSScore=11.3333 + orthologGroup saccharomyceta CompletenessScore=1.0 ImpliedLosses=0 TCSScore=8.1053 + orthologGroup leotiomyceta CompletenessScore=1.0 ImpliedLosses=0 TCSScore=5.3529 + orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=2.4 + orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=1.0 + orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A1L9V8A8|A0A1L9V8A8_ASPGL tr|A0A1V6PFJ5|A0A1V6PFJ5_PENDC - orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A1B7P546|A0A1B7P546_9EURO tr|F2PX54|F2PX54_TRIEC tr|A0A0D2HRY1|A0A0D2HRY1_CLAB1 - orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=6 TCSScore=3.5 - orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.0 - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=3.5 + orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=2.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A7J6IT22|A0A7J6IT22_COLFN tr|A0AAX4IIC0|A0AAX4IIC0_9PEZI - orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 - orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.75 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A395SBU8|A0A395SBU8_FUSSP tr|A0A8H5V8Q5|A0A8H5V8Q5_GIBSU tr|A0A9P9KZI6|A0A9P9KZI6_FUSSL tr|G9MQ06|G9MQ06_HYPVG - orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.5 + orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.5 paralogGroup tr|A0A2P5HKR8|A0A2P5HKR8_DIAHE tr|A0A2P5I0U7|A0A2P5I0U7_DIAHE @@ -246,14 +246,14 @@ orthologGroup Fungi CompletenessScore=1.0 ImpliedLosses=44 TCSScore=12.7797 sp|O36028|ATCZ_SCHPO sp|Q09891|ATCX_SCHPO paralogGroup - orthologGroup Basidiomycota CompletenessScore=0.875 ImpliedLosses=6 TCSScore=2.25 - orthologGroup Ustilaginomycotina CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.6667 - orthologGroup Exobasidiomycetes CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Basidiomycota CompletenessScore=0.875 ImpliedLosses=2 TCSScore=2.25 + orthologGroup Ustilaginomycotina CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.6667 + orthologGroup Exobasidiomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A0P1BP52|A0A0P1BP52_9BASI tr|A0A316V1J6|A0A316V1J6_9BASI tr|A0A0F7S488|A0A0F7S488_9BASI paralogGroup - orthologGroup Agaricomycetes CompletenessScore=0.75 ImpliedLosses=2 TCSScore=0.6667 + orthologGroup Agaricomycetes CompletenessScore=0.75 ImpliedLosses=1 TCSScore=0.6667 orthologGroup Agaricales CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 tr|A0A067TK84|A0A067TK84_GALM3 tr|A0A0C3CJD5|A0A0C3CJD5_HEBCY @@ -267,15 +267,15 @@ orthologGroup Fungi CompletenessScore=1.0 ImpliedLosses=44 TCSScore=12.7797 tr|A0A1Y2AY62|A0A1Y2AY62_9FUNG tr|A0A1Y2CGT1|A0A1Y2CGT1_9FUNG tr|A0ABM8W4B7|A0ABM8W4B7_GIGMA - orthologGroup Fungiincertaesedis CompletenessScore=0.75 ImpliedLosses=2 TCSScore=1.75 - orthologGroup Mucoromycota CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.6667 + orthologGroup Fungiincertaesedis CompletenessScore=0.75 ImpliedLosses=1 TCSScore=1.75 + orthologGroup Mucoromycota CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.6667 paralogGroup tr|A0ABN7UQ65|A0ABN7UQ65_GIGMA tr|A0ABN7VFB1|A0ABN7VFB1_GIGMA tr|A0AAD7V148|A0AAD7V148_9FUNG tr|A0ABQ8PP77|A0ABQ8PP77_9FUNG - orthologGroup Fungiincertaesedis CompletenessScore=0.75 ImpliedLosses=2 TCSScore=2.0 - orthologGroup Mucoromycota CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.75 + orthologGroup Fungiincertaesedis CompletenessScore=0.75 ImpliedLosses=1 TCSScore=2.0 + orthologGroup Mucoromycota CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.75 paralogGroup tr|A0AAD7UYQ7|A0AAD7UYQ7_9FUNG tr|A0AAD7VBQ1|A0AAD7VBQ1_9FUNG diff --git a/tests/data/fungi30/golden/F0848294.txt b/tests/data/fungi30/golden/F0848294.txt index 99f4225..63c392d 100644 --- a/tests/data/fungi30/golden/F0848294.txt +++ b/tests/data/fungi30/golden/F0848294.txt @@ -1,31 +1,31 @@ # 30 input proteins, 1 groups, 30 proteins in groups -orthologGroup Fungi CompletenessScore=1.0 ImpliedLosses=22 TCSScore=16.1333 - orthologGroup Dikarya CompletenessScore=1.0 ImpliedLosses=19 TCSScore=13.0385 - orthologGroup Ascomycota CompletenessScore=1.0 ImpliedLosses=13 TCSScore=11.7222 - orthologGroup saccharomyceta CompletenessScore=1.0 ImpliedLosses=12 TCSScore=8.1176 - orthologGroup leotiomyceta CompletenessScore=1.0 ImpliedLosses=11 TCSScore=5.125 - orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.4 - orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=3 TCSScore=1.0 - orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 +orthologGroup Fungi CompletenessScore=1.0 ImpliedLosses=0 TCSScore=16.1333 + orthologGroup Dikarya CompletenessScore=1.0 ImpliedLosses=0 TCSScore=13.0385 + orthologGroup Ascomycota CompletenessScore=1.0 ImpliedLosses=0 TCSScore=11.7222 + orthologGroup saccharomyceta CompletenessScore=1.0 ImpliedLosses=0 TCSScore=8.1176 + orthologGroup leotiomyceta CompletenessScore=1.0 ImpliedLosses=0 TCSScore=5.125 + orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=2.4 + orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=1.0 + orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A1L9VWY3|A0A1L9VWY3_ASPGL tr|A0A1V6PIE3|A0A1V6PIE3_PENDC - orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A1B7P792|A0A1B7P792_9EURO tr|F2PQY5|F2PQY5_TRIEC tr|A0A0D2HIH0|A0A0D2HIH0_CLAB1 - orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=6 TCSScore=3.3333 - orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.0 - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=3.3333 + orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=2.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0AAX4HY75|A0AAX4HY75_9PEZI tr|L2G5M7|L2G5M7_COLFN - orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 - orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.75 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A395RH59|A0A395RH59_FUSSP tr|A0A8H5NX32|A0A8H5NX32_GIBSU tr|A0A9P9RC40|A0A9P9RC40_FUSSL tr|G9N112|G9N112_HYPVG - orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A2P5HL36|A0A2P5HL36_DIAHE tr|A0A6P8AUH6|A0A6P8AUH6_PYRGI tr|Q7RYM3|Q7RYM3_NEUCR @@ -33,21 +33,21 @@ orthologGroup Fungi CompletenessScore=1.0 ImpliedLosses=22 TCSScore=16.1333 tr|A0A7C8MU77|A0A7C8MU77_9PLEO tr|A0AA35IZ99|A0AA35IZ99_SACMI sp|Q1MTQ9|NIP7_SCHPO - orthologGroup Basidiomycota CompletenessScore=1.0 ImpliedLosses=5 TCSScore=2.125 - orthologGroup Agaricomycetes CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 - orthologGroup Agaricales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Basidiomycota CompletenessScore=1.0 ImpliedLosses=0 TCSScore=2.125 + orthologGroup Agaricomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.75 + orthologGroup Agaricales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A067TQ63|A0A067TQ63_GALM3 tr|A0A0C3CUS6|A0A0C3CUS6_HEBCY tr|B0CR22|B0CR22_LACBS tr|A0AAW0GQL6|A0AAW0GQL6_9APHY - orthologGroup Ustilaginomycotina CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.6667 - orthologGroup Exobasidiomycetes CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Ustilaginomycotina CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.6667 + orthologGroup Exobasidiomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A0P1BJE5|A0A0P1BJE5_9BASI tr|A0A316UL47|A0A316UL47_9BASI tr|A0A0F7RSB9|A0A0F7RSB9_9BASI tr|M7XIG2|M7XIG2_RHOT1 - orthologGroup Fungiincertaesedis CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.5 - orthologGroup Mucoromycota CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Fungiincertaesedis CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.5 + orthologGroup Mucoromycota CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0AAD7VCH9|A0AAD7VCH9_9FUNG tr|A0ABN7VXY4|A0ABN7VXY4_GIGMA tr|A0A1Y2AHI4|A0A1Y2AHI4_9FUNG diff --git a/tests/data/fungi30/golden/F1085561.txt b/tests/data/fungi30/golden/F1085561.txt index 26e2893..57e82df 100644 --- a/tests/data/fungi30/golden/F1085561.txt +++ b/tests/data/fungi30/golden/F1085561.txt @@ -1,47 +1,28 @@ # 28 input proteins, 2 groups, 28 proteins in groups -orthologGroup leotiomyceta CompletenessScore=0.625 ImpliedLosses=12 TCSScore=5.0 +orthologGroup leotiomyceta CompletenessScore=0.625 ImpliedLosses=15 TCSScore=8.1111 paralogGroup - orthologGroup Sordariomycetes CompletenessScore=0.2222 ImpliedLosses=4 TCSScore=0.0 - tr|A0A2P5I218|A0A2P5I218_DIAHE - tr|G9N994|G9N994_HYPVG - orthologGroup Sordariomycetes CompletenessScore=0.7778 ImpliedLosses=6 TCSScore=2.8571 - orthologGroup Hypocreomycetidae CompletenessScore=0.8333 ImpliedLosses=4 TCSScore=1.6 - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 - tr|A0AAX4IGD7|A0AAX4IGD7_9PEZI - tr|L2FZ33|L2FZ33_COLFN - orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 - tr|A0A395SGQ3|A0A395SGQ3_FUSSP - tr|A0A8H5V7B3|A0A8H5V7B3_GIBSU - tr|A0A9P9L341|A0A9P9L341_FUSSL - orthologGroup Sordariomycetidae CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 - tr|A0ABQ8N552|A0ABQ8N552_PYRGI - tr|Q7S4T5|Q7S4T5_NEUCR - tr|A0A0D2G4K5|A0A0D2G4K5_CLAB1 - -orthologGroup leotiomyceta CompletenessScore=0.625 ImpliedLosses=18 TCSScore=8.1111 - paralogGroup - orthologGroup Sordariomycetes CompletenessScore=0.5556 ImpliedLosses=6 TCSScore=1.8 - orthologGroup Hypocreomycetidae CompletenessScore=0.5 ImpliedLosses=4 TCSScore=0.6667 - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetes CompletenessScore=0.5556 ImpliedLosses=4 TCSScore=1.8 + orthologGroup Hypocreomycetidae CompletenessScore=0.5 ImpliedLosses=3 TCSScore=0.6667 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0AAX4J405|A0AAX4J405_9PEZI tr|L2FYR0|L2FYR0_COLFN tr|A0A9P9HDS3|A0A9P9HDS3_FUSSL orthologGroup Sordariomycetidae CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 tr|A0A2P5HMI4|A0A2P5HMI4_DIAHE tr|A7UWI4|A7UWI4_NEUCR - orthologGroup Sordariomycetes CompletenessScore=0.7778 ImpliedLosses=8 TCSScore=5.8182 - orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=6 TCSScore=3.1 - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Sordariomycetes CompletenessScore=0.7778 ImpliedLosses=3 TCSScore=5.8182 + orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=3.1 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0AAX4J1E3|A0AAX4J1E3_9PEZI tr|L2FT04|L2FT04_COLFN paralogGroup - orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A395RWT8|A0A395RWT8_FUSSP tr|A0A8H5KT52|A0A8H5KT52_GIBSU tr|A0A9P9KTM8|A0A9P9KTM8_FUSSL - orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=2 TCSScore=1.0 - orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=1.0 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A395SBD1|A0A395SBD1_FUSSP tr|A0A8H5QE56|A0A8H5QE56_GIBSU tr|A0A9P9K4X7|A0A9P9K4X7_FUSSL @@ -51,3 +32,22 @@ orthologGroup leotiomyceta CompletenessScore=0.625 ImpliedLosses=18 TCSScore=8. tr|A0A2P5HYD3|A0A2P5HYD3_DIAHE tr|A0ABQ8NQ87|A0ABQ8NQ87_PYRGI tr|A0A1B7P2U9|A0A1B7P2U9_9EURO + +orthologGroup leotiomyceta CompletenessScore=0.625 ImpliedLosses=9 TCSScore=5.0 + paralogGroup + orthologGroup Sordariomycetes CompletenessScore=0.2222 ImpliedLosses=4 TCSScore=0.0 + tr|A0A2P5I218|A0A2P5I218_DIAHE + tr|G9N994|G9N994_HYPVG + orthologGroup Sordariomycetes CompletenessScore=0.7778 ImpliedLosses=2 TCSScore=2.8571 + orthologGroup Hypocreomycetidae CompletenessScore=0.8333 ImpliedLosses=1 TCSScore=1.6 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 + tr|A0AAX4IGD7|A0AAX4IGD7_9PEZI + tr|L2FZ33|L2FZ33_COLFN + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 + tr|A0A395SGQ3|A0A395SGQ3_FUSSP + tr|A0A8H5V7B3|A0A8H5V7B3_GIBSU + tr|A0A9P9L341|A0A9P9L341_FUSSL + orthologGroup Sordariomycetidae CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 + tr|A0ABQ8N552|A0ABQ8N552_PYRGI + tr|Q7S4T5|Q7S4T5_NEUCR + tr|A0A0D2G4K5|A0A0D2G4K5_CLAB1 diff --git a/tests/data/fungi30/golden/clust12762.txt b/tests/data/fungi30/golden/clust12762.txt index ed2d387..a1639b5 100644 --- a/tests/data/fungi30/golden/clust12762.txt +++ b/tests/data/fungi30/golden/clust12762.txt @@ -1,9 +1,9 @@ # 32 input proteins, 1 groups, 32 proteins in groups -orthologGroup Fungi CompletenessScore=0.4667 ImpliedLosses=27 TCSScore=13.1875 - orthologGroup Dikarya CompletenessScore=0.5 ImpliedLosses=26 TCSScore=9.0645 - orthologGroup leotiomyceta CompletenessScore=0.5 ImpliedLosses=8 TCSScore=3.2 - orthologGroup Eurotiomycetes CompletenessScore=0.4 ImpliedLosses=1 TCSScore=0.0 +orthologGroup Fungi CompletenessScore=0.4667 ImpliedLosses=35 TCSScore=13.1875 + orthologGroup Dikarya CompletenessScore=0.5 ImpliedLosses=33 TCSScore=9.0645 + orthologGroup leotiomyceta CompletenessScore=0.5 ImpliedLosses=9 TCSScore=3.2 + orthologGroup Eurotiomycetes CompletenessScore=0.4 ImpliedLosses=2 TCSScore=0.0 tr|A0A0D2EY06|A0A0D2EY06_CLAB1 tr|A0A1L9V481|A0A1L9V481_ASPGL orthologGroup Sordariomycetes CompletenessScore=0.5556 ImpliedLosses=6 TCSScore=2.0 @@ -11,17 +11,17 @@ orthologGroup Fungi CompletenessScore=0.4667 ImpliedLosses=27 TCSScore=13.1875 tr|A0A2P5HSU6|A0A2P5HSU6_DIAHE tr|A0ABQ8NCJ7|A0ABQ8NCJ7_PYRGI paralogGroup - orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.0 tr|A0A7J6J7J9|A0A7J6J7J9_COLFN tr|A0AAX4I094|A0AAX4I094_9PEZI - orthologGroup Hypocreomycetidae CompletenessScore=0.3333 ImpliedLosses=2 TCSScore=0.0 + orthologGroup Hypocreomycetidae CompletenessScore=0.3333 ImpliedLosses=4 TCSScore=0.0 tr|A0A7J6IMQ8|A0A7J6IMQ8_COLFN tr|A0A8H5QA53|A0A8H5QA53_GIBSU paralogGroup tr|A0A7C8IE91|A0A7C8IE91_9PLEO tr|A0A7C8MPZ1|A0A7C8MPZ1_9PLEO paralogGroup - orthologGroup Basidiomycota CompletenessScore=0.5 ImpliedLosses=7 TCSScore=1.8333 + orthologGroup Basidiomycota CompletenessScore=0.5 ImpliedLosses=9 TCSScore=1.8333 paralogGroup orthologGroup Agaricales CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 tr|A0A067T9C5|A0A067T9C5_GALM3 @@ -32,8 +32,8 @@ orthologGroup Fungi CompletenessScore=0.4667 ImpliedLosses=27 TCSScore=13.1875 tr|A0A067TFH6|A0A067TFH6_GALM3 tr|A0A0F7RU98|A0A0F7RU98_9BASI paralogGroup - orthologGroup Agaricomycetes CompletenessScore=1.0 ImpliedLosses=2 TCSScore=2.0 - orthologGroup Agaricales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.8571 + orthologGroup Agaricomycetes CompletenessScore=1.0 ImpliedLosses=0 TCSScore=2.0 + orthologGroup Agaricales CompletenessScore=1.0 ImpliedLosses=0 TCSScore=0.8571 paralogGroup tr|A0A0C2XVI8|A0A0C2XVI8_HEBCY tr|A0A0C3BYI6|A0A0C3BYI6_HEBCY diff --git a/tests/test_hog_class.py b/tests/test_hog_class.py index 54ee0bf..fe88cef 100644 --- a/tests/test_hog_class.py +++ b/tests/test_hog_class.py @@ -223,10 +223,6 @@ def test_to_orthoxml_with_scores(sp): assert _tags(e)[:4] == ["score", "score", "score", "property"] -@pytest.mark.xfail(strict=True, reason="BUG: ImpliedLosses compares species tree nodes by identity " - "(_count_untouched_clades, _hog_class.py:82-86), but the scoring tree " - "(full_species_tree) and the trees of the separately pickled levels are " - "different copies, so every nested level counts one extra loss") @pytest.mark.parametrize("pickled", [False, True], ids=["in-memory", "pickled-per-level"]) @pytest.mark.parametrize("present,expected_losses", [(["A", "B", "C", "D"], 0), (["A", "C"], 2)], ids=["complete", "two-clades-lost"]) @@ -250,6 +246,29 @@ def level(h): assert e.find("score[@id='ImpliedLosses']").get("value") == str(expected_losses) +def test_implied_losses_with_duplication_independent_of_tree_copies(): + # ((A,B)AB,(C,D)CD)root with a duplication at AB: copy 1 has A and B, copy 2 only A; C present, D lost. + # The value must not depend on whether the levels share one tree object. + import pickle + + def build(tree, level): + a1, a2 = (level(leaf_hog(pid(n, "A", i), tree)) for n, i in (("a1", 1), ("a2", 2))) + b1, c1 = level(leaf_hog(pid("b1", "B", 3), tree)), level(leaf_hog(pid("c1", "C", 4), tree)) + copy1 = level(merged_hog([a1, b1], tree & "AB")) + copy2 = level(merged_hog([a2], tree & "AB")) + return level(merged_hog([copy1, copy2, c1], tree)) + + def losses(top, scoring_tree): + return top.to_orthoxml(scoring_tree).find("score[@id='ImpliedLosses']").get("value") + + single = species_tree("((A,B)AB,(C,D)CD)root;") + expected = losses(build(single, lambda h: h), single) + full = species_tree("((A,B)AB,(C,D)CD)root;") + work = full.copy() + pickled = build(work, lambda h: pickle.loads(pickle.dumps([h]))[0]) + assert losses(pickled, full) == expected == "2" # D lost, and B lost in copy 2 + + def test_to_orthoxml_inparalogs_give_paralog_group(sp): h = merged_hog([leaf_hog(A1, sp), leaf_hog(A2, sp)], sp & "A") e = h.to_orthoxml(sp, NO_SCORES)