P-values not calculated when wilc = 0


I have a dataset that is comparing multiple groups of samples and I previously had problems that the Wilcoxon test was being run even when I didn’t have subgroups. This forum helped me realize I needed to be using the --wilc 0 option to force it to not run the Wilcoxon test.

My new problem arises in that now the p-values for the features passing the initial Kruskal-Wallis test are not being assigned a p-value. The output file is giving me a certain number of taxa that are passing the test and the log ratio and LDA score, but no p-value. Is there a way to make LEfSe provide the p-value from the kruskal wallis? Here’s the command I ran:

run_lefse.py formatted_cntrl_ace.in test_lefse_pval.res --wilc 0

Thank you,

Hi -
Sorry for the late reply! If you haven’t found a solution for this, here’s what might work:
LEfSe skips recording of KW p-values if Wilcox is not performed, hence we don’t see p-values with --wilc 0. Alternatively, we can still have LEfSe perform the Wilcox tests, but set the alpha level to, say, 1, so that the tests do not filter out any features. This effectively retains the KW p-values but also removes Wilcox filtering. The corresponding command should be (setting KW alpha level to 1)

run_lefse.py formatted_cntrl_ace.in test_lefse_pval.res -w 1

Let me know if this doesn’t work!

1 Like

The corresponding command should be (setting KW alpha level to 1)

Within parenthesis should it be “(setting Wilcoxon alpha level to 1)”. Right? Is it a type error by you or I am getting it wrong?


Yep - it should be Wilcoxon.