Differentially Paired RNA-Seq Analysis DESeq2
1
0
Entering edit mode
Raúl • 0
@566964b1
Last seen 3.8 years ago
Spain

Hello,

I'm exhausted with this problem. I hope some of you can help me. I will explain my problem. I have 68 samples from 34 individuals (2 sample per individual, in different times). This 34 individuals belong to two different groups (F and C). I have to compare the different times from two groups. I mean F1 vs F2 and C1 vs C2.


data.frame(sample=c("C10_1", "C10_2", "C11_1", "C11_2", "C12_1", "C12_2", 
    "C13_1", "C13_2", "C14_1", "C14_2", "C17_1", "C17_2", "C2_1", 
    "C2_2", "C22_1", "C22_2", "C23_1", "C23_2", "C3_1", "C3_2", 
    "C30_1", "C30_2", "C32_1", "C32_2", "C4_1", "C4_2", "C6_1", 
    "C6_2", "C7_1", "C7_2", "C8_1", "C8_2", "F02_1", "F02_2", 
    "F03_1", "F03_2", "F04_1", "F04_2", "F06_1", "F06_2", "F07_1", 
    "F07_2", "F08_1", "F08_2", "F09_1", "F09_2", "F10_1", "F10_2", 
    "F12_1", "F12_2", "F14_1", "F14_2", "F16_1", "F16_2", "F17_1", 
    "F17_2", "F18_1", "F18_2", "F19_1", "F19_2", "F21_1", "F21_2", 
    "F22_1", "F22_2", "F23_1", "F23_2", "F26_1", "F26_2"), ind = c("C10", 
    "C10", "C11", "C11", "C12", "C12", "C13", "C13", "C14", "C14", 
    "C17", "C17", "C2", "C2", "C22", "C22", "C23", "C23", "C3", 
    "C3", "C30", "C30", "C32", "C32", "C4", "C4", "C6", "C6", 
    "C7", "C7", "C8", "C8", "F02", "F02", "F03", "F03", "F04", 
    "F04", "F06", "F06", "F07", "F07", "F08", "F08", "F09", "F09", 
    "F10", "F10", "F12", "F12", "F14", "F14", "F16", "F16", "F17", 
    "F17", "F18", "F18", "F19", "F19", "F21", "F21", "F22", "F22", 
    "F23", "F23", "F26", "F26"), group_time = c("C1", 
    "C2", "C1", "C2", "C1", "C2", "C1", "C2", "C1", "C2", "C1", 
    "C2", "C1", "C2", "C1", "C2", "C1", "C2", "C1", "C2", "C1", 
    "C2", "C1", "C2", "C1", "C2", "C1", "C2", "C1", "C2", "C1", 
    "C2", "F1", "F2", "F1", "F2", "F1", "F2", "F1", "F2", "F1", 
    "F2", "F1", "F2", "F1", "F2", "F1", "F2", "F1", "F2", "F1", 
    "F2", "F1", "F2", "F1", "F2", "F1", "F2", "F1", "F2", "F1", 
    "F2", "F1", "F2", "F1", "F2", "F1", "F2"))

When I want to perform the two comparisons with this code:


dds <- DESeqDataSetFromMatrix(expression_matrix, colData = new_pheno, design = ~ group_time + ind)

I received the next error:

Error in checkFullRank(modelMatrix) : the model matrix is not full rank, so the model cannot be fit as specified. One or more variables or interaction terms in the design formula are linear combinations of the others and must be removed.

Please read the vignette section 'Model matrix not full rank':

Am I wrong with the design?

Thanks for your help!

DESeq2 • 987 views
ADD COMMENT
0
Entering edit mode
@mikelove
Last seen 18 hours ago
United States

Please do read the vignette, this design is covered.

ADD COMMENT
0
Entering edit mode

Finally I think I understand the problem. However I'm still confused. I have changed the matrix in order to make it more similar to the example in vignettes.


coldata = data.frame(samples = c("C10_1", "C10_2", "C11_1", "C11_2", "C12_1", "C12_2", 
    "C13_1", "C13_2", "C14_1", "C14_2", "C17_1", "C17_2", "C2_1", 
    "C2_2", "C22_1", "C22_2", "C23_1", "C23_2", "C3_1", "C3_2", 
    "C30_1", "C30_2", "C32_1", "C32_2", "C4_1", "C4_2", "C6_1", 
    "C6_2", "C7_1", "C7_2", "C8_1", "C8_2", "F02_1", "F02_2", 
    "F03_1", "F03_2", "F04_1", "F04_2", "F06_1", "F06_2", "F07_1", 
    "F07_2", "F08_1", "F08_2", "F09_1", "F09_2", "F10_1", "F10_2", 
    "F12_1", "F12_2", "F14_1", "F14_2", "F16_1", "F16_2", "F17_1", 
    "F17_2", "F18_1", "F18_2", "F19_1", "F19_2", "F21_1", "F21_2", 
    "F22_1", "F22_2", "F23_1", "F23_2", "F26_1", "F26_2"), ind = c("C10", 
    "C10", "C11", "C11", "C12", "C12", "C13", "C13", "C14", "C14", 
    "C17", "C17", "C2", "C2", "C22", "C22", "C23", "C23", "C3", 
    "C3", "C30", "C30", "C32", "C32", "C4", "C4", "C6", "C6", 
    "C7", "C7", "C8", "C8", "F02", "F02", "F03", "F03", "F04", 
    "F04", "F06", "F06", "F07", "F07", "F08", "F08", "F09", "F09", 
    "F10", "F10", "F12", "F12", "F14", "F14", "F16", "F16", "F17", 
    "F17", "F18", "F18", "F19", "F19", "F21", "F21", "F22", "F22", 
    "F23", "F23", "F26", "F26"), time = c("1", "2", "1", "2", "1", "2", 
    "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", 
    "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", 
    "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", 
    "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", 
    "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", 
    "1", "2"), group = c("C", "C", "C", "C", "C", "C", "C", "C", "C", 
    "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", 
    "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "F", 
    "F", "F", "F", "F", "F", "F", "F", "F", "F", "F", "F", "F", 
    "F", "F", "F", "F", "F", "F", "F", "F", "F", "F", "F", "F", 
    "F", "F", "F", "F", "F", "F", "F", "F", "F", "F", "F"), c("C1", 
    "C2", "C1", "C2", "C1", "C2", "C1", "C2", "C1", "C2", "C1", 
    "C2", "C1", "C2", "C1", "C2", "C1", "C2", "C1", "C2", "C1", 
    "C2", "C1", "C2", "C1", "C2", "C1", "C2", "C1", "C2", "C1", 
    "C2", "F1", "F2", "F1", "F2", "F1", "F2", "F1", "F2", "F1", 
    "F2", "F1", "F2", "F1", "F2", "F1", "F2", "F1", "F2", "F1", 
    "F2", "F1", "F2", "F1", "F2", "F1", "F2", "F1", "F2", "F1", 
    "F2", "F1", "F2", "F1", "F2", "F1", "F2"), ind.c = c("1", "1", "2", 
    "2", "3", "3", "4", "4", "5", "5", "6", "6", "7", "7", "8", 
    "8", "9", "9", "10", "10", "11", "11", "12", "12", "13", 
    "13", "14", "14", "15", "15", "16", "16", "1", "1", "2", 
    "2", "3", "3", "4", "4", "5", "5", "6", "6", "7", "7", "8", 
    "8", "9", "9", "10", "10", "11", "11", "12", "12", "13", 
    "13", "14", "14", "15", "15", "16", "16", "17", "17", "18", 
    "18"))

dds <- DESeqDataSetFromMatrix(expression_matrix, colData = coldata, design = ~ time + time:group + time:ind.n)

After performing DESeq function my resultsNames are


resultsNames(dds)
 [1] "Intercept"     "time_2_vs_1"   "time1.groupF"  "time2.groupF"  "time1.ind.n2"  "time2.ind.n2"  "time1.ind.n3" 
 [8] "time2.ind.n3"  "time1.ind.n4"  "time2.ind.n4"  "time1.ind.n5"  "time2.ind.n5"  "time1.ind.n6"  "time2.ind.n6" 
[15] "time1.ind.n7"  "time2.ind.n7"  "time1.ind.n8"  "time2.ind.n8"  "time1.ind.n9"  "time2.ind.n9"  "time1.ind.n10"
[22] "time2.ind.n10" "time1.ind.n11" "time2.ind.n11" "time1.ind.n12" "time2.ind.n12" "time1.ind.n13" "time2.ind.n13"
[29] "time1.ind.n14" "time2.ind.n14" "time1.ind.n15" "time2.ind.n15" "time1.ind.n16" "time2.ind.n16" "time1.ind.n17"
[36] "time2.ind.n17" "time1.ind.n18" "time2.ind.n18"

So I can compare F1 vs F2 with time1.groupF and time2.groupF labels. But how can I compare C1 vs C2 or time1.groupC vs time2.groupC?

ADD REPLY
0
Entering edit mode

I don't have time to help with statistical analysis and interpretation of results here, I have to limit myself to software related questions. I recommend users collaborate with a local statistician or someone familiar with linear models in R.

ADD REPLY

Login before adding your answer.

Traffic: 794 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