ChiLiubio / microeco

An R package for data analysis in microbial community ecology
GNU General Public License v3.0
195 stars 56 forks source link

Error in trans_diff$new by method = "lefse" #377

Closed cheng-xd closed 3 months ago

cheng-xd commented 3 months ago

Hi, Thanks so much for developing such a useful package!

When I filter biomarkers with the lefse method, the species information in the resulting file is garbled.

kBacteria|pFirmicutes|cBacilli\oRF39 | kBacteria|pFirmicutes|cBacilli|oRF39|| kBacteria|pFirmicutes|cBacilli|oRF39|||

t1 <- trans_diff$new(dataset = dataset, method = "lefse", p_adjust_method = "none",

  • group = "group", alpha = 0.05, lefse_subgroup = NULL) 1140 input features ... 861 features are remained after removing unknown features ... Start Kruskal-Wallis rank sum test for group ... 54 taxa found significant ... After P value adjustment, 54 taxa found significant ... Minimum LDA score: 2.30955658166573 maximum LDA score: 4.79895051133843 Taxa abundance table is stored in object$res_abund ... lefse analysis result is stored in object$res_diff ... There were 50 or more warnings (use warnings() to see the first 50) lefse <-t1$res_diff
lsfse

Thank you! Best

ChiLiubio commented 3 months ago

Hi. I guess it comes from the chaotic taxonomic info (such as unclassified, unknown, unidentified ...). To solve this, please refer to previous topic with similar issue (https://github.com/ChiLiubio/microeco/issues/254). For more examples on tidy_taxonomy funciton, please find the links in the tutorial (https://chiliubio.github.io/microeco_tutorial/other-examples-1.html#tidy_taxonomy-function). Please tell me if it is still there. Best, Chi

cheng-xd commented 3 months ago

Thanks for the quick reply :

I used the code ( tax_table %<>% tidy_taxonomy) but the problem is not solved

Here is the data file data.zip

ChiLiubio commented 3 months ago

Hi. It is fine here. The relative abundance should be recalculated.

library(microeco)
library(magrittr)

load("dataset.RData")

dataset$tax_table %<>% tidy_taxonomy
dataset$cal_abund()

t1 <- trans_diff$new(dataset = dataset, method = "lefse", p_adjust_method = "none", group = "group", alpha = 0.05, lefse_subgroup = NULL)

lefse <- t1$res_diff
cheng-xd commented 3 months ago

Hi. the problem is not solved

image

ChiLiubio commented 3 months ago

Hi. I checked the results again and donot find those names.

sort(rownames(lefse))

[1] "kBacteria|pActinobacteriota|cCoriobacteriia|oCoriobacteriales|fEggerthellaceae|gEnterorhabdus"
[2] "kBacteria|pBacteroidota|cBacteroidia|oBacteroidales|fBacteroidales_UCG_001"
[3] "k
Bacteria|pBacteroidota|cBacteroidia|oBacteroidales|fPrevotellaceae|gPrevotellaceae_Ga6A1_group"
[4] "k
Bacteria|pBacteroidota|cBacteroidia|oBacteroidales|fPrevotellaceae|gPrevotellaceae_Ga6A1_group|srumen_bacterium_RC_2"
[5] "kBacteria|pBacteroidota|cBacteroidia|oBacteroidales|fRikenellaceae|gU29_B03"
[6] "kBacteria|pElusimicrobiota"
[7] "kBacteria|pElusimicrobiota|cEndomicrobia"
[8] "k
Bacteria|pElusimicrobiota|cEndomicrobia|oEndomicrobiales"
[9] "k
Bacteria|pElusimicrobiota|cEndomicrobia|oEndomicrobiales|fEndomicrobiaceae"
[10] "kBacteria|pElusimicrobiota|cEndomicrobia|oEndomicrobiales|fEndomicrobiaceae|gEndomicrobium"
[11] "kBacteria|pFirmicutes|cBacilli|oLactobacillales|fEnterococcaceae|gEnterococcus|sEnterococcus_faecalis"
[12] "kBacteria|pFirmicutes|cClostridia|o|fHungateiclostridiaceae"
[13] "k
Bacteria|pFirmicutes|cClostridia|o|fHungateiclostridiaceae|gRuminiclostridium"
[14] "k
Bacteria|pFirmicutes|cClostridia|o|fHungateiclostridiaceae|gSaccharofermentans|srumen_bacterium_NK4A65"
[15] "kBacteria|pFirmicutes|cClostridia|o|fHungateiclostridiaceae|gSaccharofermentans|sRuminococcaceae_bacterium_AE2021"
[16] "k
Bacteria|pFirmicutes|cClostridia|o|fRuminococcaceae"
[17] "kBacteria|pFirmicutes|cClostridia|oLachnospirales"
[18] "kBacteria|pFirmicutes|cClostridia|oLachnospirales|fLachnospiraceae"
[19] "k
Bacteria|pFirmicutes|cClostridia|oLachnospirales|fLachnospiraceae|gAcetitomaculum"
[20] "k
Bacteria|pFirmicutes|cClostridia|oLachnospirales|fLachnospiraceae|gLachnospiraceae_AC2044_group"
[21] "k
Bacteria|pFirmicutes|cClostridia|oLachnospirales|fLachnospiraceae|gLachnospiraceae_FE2018_group"
[22] "k
Bacteria|pFirmicutes|cClostridia|oLachnospirales|fLachnospiraceae|gLachnospiraceae_ND3007_group"
[23] "k
Bacteria|pFirmicutes|cClostridia|oLachnospirales|fLachnospiraceae|gLachnospiraceae_NK3A20_group"
[24] "k
Bacteria|pFirmicutes|cClostridia|oLachnospirales|fLachnospiraceae|gprobable_genus_10"
[25] "k
Bacteria|pFirmicutes|cClostridia|oLachnospirales|fLachnospiraceae|gRoseburia"
[26] "k
Bacteria|pFirmicutes|cClostridia|oOscillospirales|fEubacterium_coprostanoligenes_group"
[27] "kBacteria|pFirmicutes|cClostridia|oOscillospirales|fRuminococcaceae"
[28] "k
Bacteria|pFirmicutes|cClostridia|oOscillospirales|fRuminococcaceae|g__CAG_352"
[29] "k
Bacteria|pFirmicutes|cClostridia|oOscillospirales|fRuminococcaceae|gRuminococcus"
[30] "k
Bacteria|pFirmicutes|cClostridia|oOscillospirales|fRuminococcaceae|gRuminococcus|sRuminococcus_albus"
[31] "kBacteria|pFirmicutes|cClostridia|oOscillospirales|fRuminococcaceae|gRuminococcus|sRuminococcus_sp_HUN007"
[32] "k
Bacteria|pFirmicutes|cClostridia|oOscillospirales|fUCG_010"
[33] "kBacteria|pFirmicutes|cClostridia|oPeptostreptococcales_Tissierellales"
[34] "kBacteria|pFirmicutes|cClostridia|oPeptostreptococcales_Tissierellales|fAnaerovoracaceae|gFamily_XIII_UCG_001"
[35] "kBacteria|pFirmicutes|cNegativicutes"
[36] "k
Bacteria|pFirmicutes|cNegativicutes|oAcidaminococcales"
[37] "k
Bacteria|pFirmicutes|cNegativicutes|oAcidaminococcales|fAcidaminococcaceae"
[38] "kBacteria|pFirmicutes|cNegativicutes|oAcidaminococcales|fAcidaminococcaceae|gSucciniclasticum"
[39] "kBacteria|pFirmicutes|cNegativicutes|oVeillonellales_Selenomonadales"
[40] "kBacteria|pFirmicutes|cNegativicutes|oVeillonellales_Selenomonadales|fSelenomonadaceae"
[41] "k
Bacteria|pFirmicutes|cNegativicutes|oVeillonellales_Selenomonadales|fSelenomonadaceae|gAnaerovibrio|s__Anaerovibrio_lipolyticus" [42] "kBacteria|pFirmicutes|cNegativicutes|oVeillonellales_Selenomonadales|fSelenomonadaceae|gQuinella"
[43] "kBacteria|pFirmicutes|cNegativicutes|oVeillonellales_Selenomonadales|f
Selenomonadaceae|gVeillonellaceae_UCG_001"
[44] "k
Bacteria|pProteobacteria|cGammaproteobacteria|oXanthomonadales|fRhodanobacteraceae"
[45] "kBacteria|pProteobacteria|cGammaproteobacteria|oXanthomonadales|fRhodanobacteraceae|gDokdonella"

cheng-xd commented 3 months ago

It's so sad, reinstalled the r-package on a different device problem still not solved.

image

1719398476887
ChiLiubio commented 3 months ago

Hi. Please make sure the steps are the following:

dataset$tax_table %<>% tidy_taxonomy
dataset$cal_abund()

You tidy tax_table, not dataset$tax_table. They are different objects. If you want to tidy tax_table, you should place this step before creating dataset.

cheng-xd commented 3 months ago

Thank you for your assistance. The issue has been resolved! Everything is fine!