Question: how to correct for age using Deseq2
gravatar for luca.pagliaroli
10 days ago by
luca.pagliaroli0 wrote:


I am new to programming and I am trying to analyze some gene expression data using Deseq2. Some of my samples are coming from young animals while some are coming from older animals. For each group I have Disease and Control + treatment with L-DOPA (condition). I used 1 for young samples and 2 for old samples.

I want to see the effect of L-DOPA treatment between different groups but I also want to correct for the age factor if there is any. What would be the best way to do that?

SAMPLE  condition   age
X513_1_Lesion_21d_Levodopa_1m   Disease1    1
X513_2_Lesion_21d_Levodopa_1m   Disease1    1
X513_3_Lesion_21d_Levodopa_1m   Disease1    1
X513_4_Lesion_21d_Levodopa_1m   Disease1    1
X513_5_Lesion_21d_Levodopa_1m   Disease1    1
X513_6_Lesion_21d_Levodopa_1m   Disease1    1
X513_7_Lesion_21d_Levodopa_1m   Disease1    1
X513_8_Lesion_21d_Levodopa_1m   Disease1    1
X513_9_Control_21d_Levodopa_1m  Control1    1
X513_10_Control_21d_Levodopa_1m Control1    1
X513_11_Control_21d_Levodopa_1m Control1    1
X513_12_Control_21d_Levodopa_1m Control1    1
X513_13_Control_21d_Levodopa_1m Control1    1
X513_14_Control_21d_Levodopa_1m Control1    1
X513_15_Control_21d_Levodopa_1m Control1    1
X513_16_Control_21d_Levodopa_1m Control1    1
X513_17_Lesion_21d  Disease2    1
X513_18_Lesion_21d  Disease2    1
X513_19_Lesion_21d  Disease2    1
X513_20_Lesion_21d  Disease2    1
X513_21_Lesion_21d  Disease2    1
X513_22_Lesion_21d  Disease2    1
X513_23_Lesion_21d  Disease2    1
X513_24_Lesion_21d  Disease2    1
X513_25_Control_21d Control2    1
X513_26_Control_21d Control2    1
X513_27_Control_21d Control2    1
X513_28_Control_21d Control2    1
X513_29_Control_21d Control2    1
X513_30_Control_21d Control2    1
X513_31_Control_21d Control2    1
X513_32_Control_21d Control2    1
X513_49_Lesion_21d_Levodopa_2.5m    Disease3    2
X513_50_Lesion_21d_Levodopa_2.5m    Disease3    2
X513_51_Lesion_21d_Levodopa_2.5m    Disease3    2
X513_52_Lesion_21d_Levodopa_2.5m    Disease3    2
X513_53_Lesion_21d_Levodopa_2.5m    Disease3    2
X513_54_Lesion_21d_Levodopa_2.5m    Disease3    2
X513_55_Lesion_21d_Levodopa_2.5m    Disease3    2
X513_56_Lesion_21d_Levodopa_2.5m    Disease3    2
X513_57_Control_21d_Levodopa_2.5m   Control3    2
X513_58_Control_21d_Levodopa_2.5m   Control3    2
X513_59_Control_21d_Levodopa_2.5m   Control3    2
X513_60_Control_21d_Levodopa_2.5m   Control3    2
X513_61_Control_21d_Levodopa_2.5m   Control3    2
X513_62_Control_21d_Levodopa_2.5m   Control3    2
X513_63_Control_21d_Levodopa_2.5m   Control3    2
X513_64_Control_21d_Levodopa_2.5m   Control3    2
X513_65_Lesion_2m_Levodopa_2.5m Disease4    2
X513_66_Lesion_2m_Levodopa_2.5m Disease4    2
X513_67_Lesion_2m_Levodopa_2.5m Disease4    2
X513_68_Lesion_2m_Levodopa_2.5m Disease4    2
X513_69_Lesion_2m_Levodopa_2.5m Disease4    2
X513_70_Lesion_2m_Levodopa_2.5m Disease4    2
X513_71_Lesion_2m_Levodopa_2.5m Disease4    2
X513_72_Lesion_2m_Levodopa_2.5m Disease4    2
X513_73_Control_2m_Levodopa_2.5m    Control4    2
X513_74_Control_2m_Levodopa_2.5m    Control4    2
X513_75_Control_2m_Levodopa_2.5m    Control4    2
X513_76_Control_2m_Levodopa_2.5m    Control4    2
X513_77_Control_2m_Levodopa_2.5m    Control4    2
X513_78_Control_2m_Levodopa_2.5m    Control4    2
X513_79_Control_2m_Levodopa_2.5m    Control4    2
X513_80_Control_2m_Levodopa_2.5m    Control4    2
deseq2 • 75 views
ADD COMMENTlink modified 10 days ago by Michael Love26k • written 10 days ago by luca.pagliaroli0

Your table (and the question itself) is a little unclear.

Firstly, your 'condition' column appears to be an amalgam of two different things, disease or control, then some sort of group or batch number? Consider splitting this into two columns, one purely 'disease' or 'control' and the other is this batch/group number. However, you will not be able to consider this batch number and the 'age' simultaneously, as they are confounded. (Actually, even if you don't split this, it is already confounded as-is, since there are apparently 8 different levels of 'condition', as the first 4 levels are all entirely found within age=1 group and the next 4 are all entirely found within age=2 group. You may get some sort of complaint that the design matrix is not of full rank if you attempt this.)

This leads me to also ask what do you mean by 'group' exactly when you say "I want to see the effect of L-DOPA treatment between different groups"? Is it the numbers from 1 to 4 that are attached to the Disease or Control condition name? Or is it simply disease vs control?

ADD REPLYlink modified 10 days ago • written 10 days ago by stuart10

Hi Michael.

thank you for you quick reply.

So, each of my experimental group has 8 animal, each group is name Disease X or Control X. For each group I have one side of the brain called disease and the other side of the brain called control. The difference is that the side called disease receive a stereotaxic surgery (6-ohda injection) typically used to induce Parkinson's into animal. Disease1/Group1 = 6-ohda injection followed by L-DOPA treatment at young age Disease2/Control2 = 6-ohda injection but no L-DOPA treatment at young age Disease3/Control3= 6-ohda injection at young age but L-DOPA treatment when old Disease4/Control4= 6=ohda injection and L-DOPA treatment at old age

I usually start checking differences withing the same group: example DIsease1 vs Control1, Disease 2 vs Control 2, etc Behavioral data showed that animal that received surgery at young age but treatment at old age Disease3/Control3 have a stronger phenotype. It is possible that age has some effect on gene expression data.

If i wan to compare different groups how do I account for the age effect in order to distinguish gene expression changes that are caused by L-DOPA from those caused by the age? Is there any way to correct for it?

ADD REPLYlink written 9 days ago by luca.pagliaroli0

See my answer below.

ADD REPLYlink written 9 days ago by Michael Love26k

Hi Mike

I modified the table as you suggested I now have Disease or Control as condition and AGE

Age1 means 6-ohda injection + LDOPA treatment at young age Age2 means 6-ohda injection at young age but no treatment Age 3 means 6-ohda injection at young age + L-dopa treatment at old age Age4 measn 6-ohda injection + L-DODA treatment at old age

What would be the best script to analyze the data on Deseq2

NAME condition age X5131Lesion21dLevodopa1m Disease 1 X5132Lesion21dLevodopa1m Disease 1 X5133Lesion21dLevodopa1m Disease 1 X5134Lesion21dLevodopa1m Disease 1 X5135Lesion21dLevodopa1m Disease 1 X5136Lesion21dLevodopa1m Disease 1 X5137Lesion21dLevodopa1m Disease 1 X5138Lesion21dLevodopa1m Disease 1 X5139Control21dLevodopa1m Control 1 X51310Control21dLevodopa1m Control 1 X51311Control21dLevodopa1m Control 1 X51312Control21dLevodopa1m Control 1 X51313Control21dLevodopa1m Control 1 X51314Control21dLevodopa1m Control 1 X51315Control21dLevodopa1m Control 1 X51316Control21dLevodopa1m Control 1 X51317Lesion21d Disease 2 X51318Lesion21d Disease 2 X51319Lesion21d Disease 2 X51320Lesion21d Disease 2 X51321Lesion21d Disease 2 X51322Lesion21d Disease 2 X51323Lesion21d Disease 2 X51324Lesion21d Disease 2 X51325Control21d Control 2 X51326Control21d Control 2 X51327Control21d Control 2 X51328Control21d Control 2 X51329Control21d Control 2 X51330Control21d Control 2 X51331Control21d Control 2 X51332Control21d Control 2 X51349Lesion21dLevodopa2.5m Disease 3 X51350Lesion21dLevodopa2.5m Disease 3 X51351Lesion21dLevodopa2.5m Disease 3 X51352Lesion21dLevodopa2.5m Disease 3 X51353Lesion21dLevodopa2.5m Disease 3 X51354Lesion21dLevodopa2.5m Disease 3 X51355Lesion21dLevodopa2.5m Disease 3 X51356Lesion21dLevodopa2.5m Disease 3 X51357Control21dLevodopa2.5m Control 3 X51358Control21dLevodopa2.5m Control 3 X51359Control21dLevodopa2.5m Control 3 X51360Control21dLevodopa2.5m Control 3 X51361Control21dLevodopa2.5m Control 3 X51362Control21dLevodopa2.5m Control 3 X51363Control21dLevodopa2.5m Control 3 X51364Control21dLevodopa2.5m Control 3 X51365Lesion2mLevodopa2.5m Disease 4 X51366Lesion2mLevodopa2.5m Disease 4 X51367Lesion2mLevodopa2.5m Disease 4 X51368Lesion2mLevodopa2.5m Disease 4 X51369Lesion2mLevodopa2.5m Disease 4 X51370Lesion2mLevodopa2.5m Disease 4 X51371Lesion2mLevodopa2.5m Disease 4 X51372Lesion2mLevodopa2.5m Disease 4 X51373Control2mLevodopa2.5m Control 4 X51374Control2mLevodopa2.5m Control 4 X51375Control2mLevodopa2.5m Control 4 X51376Control2mLevodopa2.5m Control 4 X51377Control2mLevodopa2.5m Control 4 X51378Control2mLevodopa2.5m Control 4 X51379Control2mLevodopa2.5m Control 4 X51380Control2mLevodopa2.5m Control 4

ADD REPLYlink written 7 days ago by luca.pagliaroli0

There's a lot going on here, and it doesn't seem to be a question about how to use the software but about what statistical analysis should be done. That conversation should really be had with a statistician who you can find to collaborate with.

I was pointing you the vignette with respect to how you can control for a variable during the analysis, e.g. controlling for batch while testing differences across condition with ~batch + condition. But it sounds like you should start first by meeting with a statistician to discuss your analysis plan. It's a larger discussion that should be had on a software support forum.

ADD REPLYlink written 7 days ago by Michael Love26k
Answer: how to correct for age using Deseq2
gravatar for Michael Love
10 days ago by
Michael Love26k
United States
Michael Love26k wrote:

Please take a look at the vignette, we discuss controlling for a nuisance variable (e.g. type in the example in the DESeq2 vignette).

ADD COMMENTlink written 10 days ago by Michael Love26k
Please log in to add an answer.


Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 16.09
Traffic: 144 users visited in the last hour