Seqanswers Leaderboard Ad



No announcement yet.
  • Filter
  • Time
  • Show
Clear All
new posts

  • Normalization to control conditions for DESeq

    Hi! I am still learning my RNA-Seq analysis and would greatly appreciate some help here.

    Our study is to investigate the pathways associated to interferon-gamma (IFNg)-induced control of infection with bacteriaX. There are four experimental groups (done as 3 biological replicates):

    1) Uninfected without IFNg
    2) Uninfected with IFNg
    3) BacteriaX infected without IFNg
    4) BacteriaX infected with IFNg

    I aligned the data to the hg19 reference genome using TopHat2 followed by HTSeq Count. My question is on the DESeq2 part: what we are really interested is the transcriptional changes associated to both infection and the presence of IFNg.

    Is it possible to normalize condition 3 to condition 1 and condition 4 to condition 2, before performing DESeq2?

    Or are there more approporiate ways to analyze the data?

    Any suggestions will be greatly appreciated! Many thanks in advance!

  • #2
    You don't need any sort of normlization outside of that already provided by DESeq2. Since you're new to things, please have a look through section 1.6 of the DESeq2 vignette. The example they use is essentially identical to yours (in your case, you would use "Infected" and "IFNg" instead of "condition" and "type"). Your design would then be "~Infected*IFNg" and you would be interested in the interaction term, which would tell you the additional effect seen with both the infection and IFNg.

    This method takes care of all of the normalization in a single step and is the statistically preferred method, so your reviewers will be happy

    Edit: See section 3.3 in the vignette too, they explicitly cover interaction terms there. That's exactly what you want.


    • #3
      Thank you very much dpryan! I will go through the vignette and see how it goes!

      Last edited by chervil157; 01-31-2016, 03:49 AM.


      • #4
        Followed the vignette and hopefully I have done it correctly:

        > mappedcount <- read.table("CountTable.txt", header=TRUE, row.names=1)
        > coldata <- read.table("Coldata.txt", header=TRUE, row.names=1)
        > Condition = coldata$Infection
        > Stimulation = coldata$Stimulation
        > cds <- DESeqDataSetFromMatrix(countData = mappedcount, colData = coldata, design = ~ Condition + Stimulation)
        > cdsMF <- DESeq(cds)
        > resMF <- results(cdsMF)
        > write.csv(resMF, file="DEG.txt")
        Last edited by chervil157; 02-01-2016, 02:53 AM.


        • #5
          I thought you were interested in the interaction between "Condition" and "Stimulation", in which case the design would need to be "~Condition + Stimulation + Condition:Stimulation" (or "~Condition*Stimulation", which is just the short-hand version). Please double check section 3.3 in the vignette.


          • #6
            Thanks again dpryan! You've been most helpful and really appreciated your comments!

            I went back to read the vignette and now noted the difference between "~Condition + Stimulation" and "~Condition*Stimulation", but when I ran DESeq2 again the result is identical...


            • #7
              Double check what "results()" is giving you the results for. If it's is indeed giving you the interaction term then you're good to go (you might manually specify the appropriate "name=" coefficient).


              • #8
                Think I must have done something wrong somehwere because this is what I got:

                > results()
                Error in "results" %in% mcols(mcols(object))$type :
                error in evaluating the argument 'table' in selecting a method for function '%in%': Error in mcols(mcols(object)) :
                error in evaluating the argument 'x' in selecting a method for function 'mcols': Error in mcols(object) :
                error in evaluating the argument 'x' in selecting a method for function 'mcols': Error: argument "object" is missing, with no default


                • #9
                  Err, don't literally type "results()", check it's manual and ensure that it's returning what it's expecting...likely by manually specifying the coefficient (i.e., the "name=something" parameter).


                  • #10
                    Oops! I see what you mean now! Feel so embarassed with my lack of understanding!

                    Yes just checked and it's all correct - thank you so much!!!!


                    Latest Articles


                    • seqadmin
                      Exploring the Dynamics of the Tumor Microenvironment
                      by seqadmin

                      The complexity of cancer is clearly demonstrated in the diverse ecosystem of the tumor microenvironment (TME). The TME is made up of numerous cell types and its development begins with the changes that happen during oncogenesis. “Genomic mutations, copy number changes, epigenetic alterations, and alternative gene expression occur to varying degrees within the affected tumor cells,” explained Andrea O’Hara, Ph.D., Strategic Technical Specialist at Azenta. “As...
                      07-08-2024, 03:19 PM
                    • seqadmin
                      Exploring Human Diversity Through Large-Scale Omics
                      by seqadmin

                      In 2003, researchers from the Human Genome Project (HGP) announced the most comprehensive genome to date1. Although the genome wasn’t fully completed until nearly 20 years later2, numerous large-scale projects, such as the International HapMap Project and 1000 Genomes Project, continued the HGP's work, capturing extensive variation and genomic diversity within humans. Recently, newer initiatives have significantly increased in scale and expanded beyond genomics, offering a more detailed...
                      06-25-2024, 06:43 AM





                    Topics Statistics Last Post
                    Started by seqadmin, 07-19-2024, 07:20 AM
                    0 responses
                    Last Post seqadmin  
                    Started by seqadmin, 07-16-2024, 05:49 AM
                    0 responses
                    Last Post seqadmin  
                    Started by seqadmin, 07-15-2024, 06:53 AM
                    0 responses
                    Last Post seqadmin  
                    Started by seqadmin, 07-10-2024, 07:30 AM
                    0 responses
                    Last Post seqadmin