Three conditions and two time points
1
0
Entering edit mode
AZ ▴ 30
@fereshteh-15803
Last seen 20 months ago
United Kingdom

Hello

Please correct me if I am wrong as I am only getting a few significant genes after differential expression analysis

I have MSC cell lines (non-treated, IT treated and LPS treated) in 24 and 48 hours

I want to compare untreated MSC with IT and LPS so, my main table is this

> design
                                               condition time

First I look at 24 and 48 hours independently

For instance for 24 hours I done so

 > design
                                 X condition time
    1       CTRL_24_hrs_replicate1   control   24
    2       CTRL_24_hrs_replicate2   control   24
    3       CTRL_24_hrs_replicate3   control   24
    4  treatment_24_hrs_replicate1        t   24
    5  treatment_24_hrs_replicate2        t   24
    6  treatment_24_hrs_replicate3        t   24
    7       CTRL_48_hrs_replicate1   control   48
    8       CTRL_48_hrs_replicate2   control   48
    9       CTRL_48_hrs_replicate3   control   48
    10 treatment_48_hrs_replicate1        t   48
    11 treatment_48_hrs_replicate2        t   48
    12 treatment_48_hrs_replicate3        t   48
    > 

dds <- DESeqDataSetFromMatrix(countData=count, colData= design24, design=~condition, tidy = FALSE)

dds <- DESeq(dds)

resIT<- results(dds, contrast=c("condition", "IT", "control"))
 resLPS <- results(dds, contrast=c("condition", "LPS", "control"))
 resIT_LPS <- results(dds, contrast=c("condition", "IT", "LPS"))

I done the same for 48 hours

Looking at the results, I only see very few significant genes

head(resIT[order(resIT $padj),])

log2 fold change (MLE): condition IT vs control 
Wald test p-value: condition IT vs control 
DataFrame with 6 rows and 6 columns
                 baseMean log2FoldChange     lfcSE      stat      pvalue        padj
                <numeric>      <numeric> <numeric> <numeric>   <numeric>   <numeric>
hsa-miR-122-5p  2021.7353      -3.148194  0.519671  -6.05805 1.37781e-09 5.75699e-05
hsa-mir-122     2021.8461      -3.148297  0.519682  -6.05812 1.37722e-09 5.75699e-05
RNU11             38.5986      -2.882145  0.621620  -4.63651 3.54342e-06 9.87044e-02
hsa-mir-133a-1    13.6656      -2.571007  0.574599  -4.47444 7.66131e-06 1.28047e-01
hsa-miR-133a-3p   13.6656      -2.571007  0.574599  -4.47444 7.66131e-06 1.28047e-01
GNAI21           130.3099       0.993967  0.232581   4.27364 1.92304e-05 2.67838e-01

Please correct me where possibly I am doing something wrong, or how I can get more significant genes?

And, please how I could take time points into the design comparing my conditions without separation my data to 24 and 48 hours?

Anyway thanks a lot in advance

DifferentialExpression DESeq2 time • 1.8k views
ADD COMMENT
0
Entering edit mode
swbarnes2 ★ 1.4k
@swbarnes2-14086
Last seen 11 hours ago
San Diego

This is not the preferred way to do this. Instead, make a third column in coldata that joins time and condition, and use contrasts to indicate what subset to compare to what. But don't expect much to change.

ADD COMMENT
0
Entering edit mode

Sorry what you mean by joining? Like IT+4hrs and IT+8hrs ???

ADD REPLY
0
Entering edit mode

Do just like it says in the vignette. The "much simpler approach"

http://bioconductor.org/packages/release/bioc/vignettes/DESeq2/inst/doc/DESeq2.html#interactions

ADD REPLY
0
Entering edit mode

Thank you

Like this?

>  dds <- DESeqDataSetFromMatrix(countData=count, 
+                                 colData=design, 
+                                 design=~condition, tidy = FALSE)
Warning message:
In DESeqDataSet(se, design = design, ignoreRank) :
  some variables in design formula are characters, converting to factors
>   dds$group <- factor(paste0(dds$time, dds$condition))
>   design(dds) <- ~ group
>   dds <- DESeq(dds)
estimating size factors
estimating dispersions
gene-wise dispersion estimates
mean-dispersion relationship
final dispersion estimates
fitting model and testing
>   resultsNames(dds)
[1] "Intercept"                    "group_24IT_vs_24control"     
[3] "group_24LPS_vs_24control"     "group_48control_vs_24control"
[5] "group_48IT_vs_24control"      "group_48LPS_vs_24control"    
> 

But I think I should have more combinations

Don't you think?

ADD REPLY
0
Entering edit mode

You can use contrasts to specify what subgroup to compare to what, even if it doesn't appear in the resultsNames.

In your case, the warning about changing characters to factors is fine; it's what you want to happen.

ADD REPLY
0
Entering edit mode

Thank you

Basically I want to compare IT versus LPS from 24 hours to 48 hours but I don't know how to add what I want in the contrast

Please can you help me?

ADD REPLY
0
Entering edit mode

What have you tried? Where have you looked?

ADD REPLY
0
Entering edit mode

Thank you

Actually I want to find the difference at time point 24 vs 48 in in each condition

I searched and I found a similar thing here

DESeq2 time series contrasts between timepoints

but I don't know how to adopt that to my data as I am observing such things (time_24_vs_48) in my design

results(dds, contrast=list(c("time_4_vs_0", "conditionLD.time4")), test="Wald")

For adopting this code, I tried this but I got error

> results(dds, contrast=list(c("time_48_vs_24", "conditionIT.time24")), test="Wald")
Error in checkContrast(contrast, resNames) : 
  all elements of the contrast as a list of length 2 should be elements of 'resultsNames(object)'
> 
ADD REPLY

Login before adding your answer.

Traffic: 1386 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6