Mis a jour le 2025-04-14, 12:10

PyDESeq2

imports :
from pydeseq2.default_inference import DefaultInference
from pydeseq2.dds import DeseqDataSet
from pydeseq2.ds import DeseqStats
  
Principe :
  • on construit un objet DeseqDataSet avec les data, metadata et en indiquant le facteur qui détermine les groupes :
    inference = DefaultInference(n_cpus = 8)
    dds = DeseqDataSet(counts = dfCounts, metadata = dfMetadata, design = '~day',
      refit_cooks = True, inference = inference, quiet = True)
        
    dfCounts doit être de type sample x gènes et dfMetadata doit être de type sample x attribut, dont ici l'attribut day.
  • dds.deseq2() : fait différents fittings.
  • ds = DeseqStats(dds, contrast = ['day', 'D1', 'D2'], alpha = 0.05, inference = inference, quiet = True) : définit les données et le facteur pour grouper, la valeur testée et la valeur de réference pour ce facteur.
  • ds.summary() : fait les calculs.
  • le résultat est dans le dataframe ds.result_df avec notamment les champs log2FoldChange, pvalue, padj
DeseqDataSet :
  • cette classe dérive de AnnData.
  • en fait, pour construire un DeseqDataSet, on peut donner simplement un objet AnnData qui a ses groupes dans le dataframe .obs, plutôt que un dataframe de counts et un dataframe de metadata.

Copyright python-simple.com
programmer en python, tutoriel python, graphes en python, Aymeric Duclert