maximtrp / scikit-posthocs

Multiple Pairwise Comparisons (Post Hoc) Tests in Python
https://scikit-posthocs.rtfd.io
MIT License
348 stars 40 forks source link

Results grouping after post-hoc test #28

Open helenocampos opened 4 years ago

helenocampos commented 4 years ago

Hi, I was wondering if there is any chance to include a feature where post hoc results are grouped according to their relationship. I know that in R there are the packages multcompLetters and multcompview, which offer such feature. I could find some people looking for a feature like this, but no feasible was found.

Example: https://stackoverflow.com/questions/48841650/python-algorithm-on-letter-based-representation-of-all-pairwise-comparisons

There is a solution attempt at those topics, but I could not reproduce them: https://stackoverflow.com/questions/43987651/tukey-test-grouping-and-plotting-in-scipy https://stackoverflow.com/questions/49963138/label-groups-from-tuekys-test-results-according-to-significant

It looks like there is a paper describing the algorithm for implementing this: Hans-Peter Piepho (2004) An Algorithm for a Letter-Based Representation of All-Pairwise Comparisons, Journal of Computational and Graphical Statistics, 13:2, 456-466, DOI: 10.1198/1061860043515

By the way, thanks for this project, it is awesome!

maximtrp commented 4 years ago

Hello! Thank you for the suggestion. I'll try to implement it

rjs211 commented 4 years ago

Hey i faced the same problem and tried to implement the feature from the R library cld.r https://github.com/cran/multcomp/blob/master/R/cld.R

The input is the pairwise significant relation matrix (boolean numpy ndarray matrix) (the one obtained after thresholding the output of various pairwise metrics).

The output is basically like the one given in the paper after sweeping.

you can find the code here . enjoy.

josef-pkt commented 3 years ago

I wrote the algorithm for this a while ago https://github.com/statsmodels/statsmodels/pull/3674 I stopped because I couldn't decide on an appropriate api for this in statsmodels.

A networkx version is included in this PR https://github.com/statsmodels/statsmodels/pull/7332/files#diff-31322db141262186bc2f902f5f55a0ad29472661fdbecdd93643d98878fdab26R841

rk-exxec commented 6 months ago

Hey, I have been looking for a feature like this. I was wondering what the status is?

maximtrp commented 3 weeks ago

Will try to find some time on it @rk-exxec