Snow Crab Differential Gene Expression

Courtney Skalley
[1] 3294   14
[1] 14  2
   condition        type
1    control single-read
2    control single-read
3    control single-read
4    control single-read
5    control single-read
6    control single-read
7    control single-read
8    control single-read
9     low pH single-read
10    low pH single-read
11    low pH single-read
12    low pH single-read
13    low pH single-read
14    low pH single-read
class: DESeqDataSet 
dim: 3294 14 
metadata(1): version
assays(1): counts
rownames(3294): contig_2632 contig_4568 ... contig_3686 contig_4058
rowData names(0):
colnames(14): X5010_1_S1_L003_R1 X5010_1_S1_L003_R2 ...
  X5010_41_S41_L003_R1 X5010_41_S41_L003_R2
colData names(2): condition type

Snow Crab (Chionoecetes opilio)

Goal: Understand Snow Crab Response to Ocean Acidification

  • Compare snow crab response to ocean acidification
  • Conduct a differential gene expression analysis
  • Using data from Laura Spencer

Experiment

63 juvenile snow crabs were exposed to different pH treatments for either a short (8 hours) or long (12 weeks) duration:

  • control (pH 8.1)
  • pH 7.8
  • pH 7.5

RNA Seq Data

  • mRNA sequencing
  • Each of the 63 samples were run in both lanes
  • 126 paired-end RNA-Seq data sets

Available data

5010_1_S1_L003_R1_001.fastq.gz
5010_1_S1_L003_R2_001.fastq.gz
5010_2_S2_L003_R1_001.fastq.gz
5010_2_S2_L003_R2_001.fastq.gz
5010_39_S39_L003_R1_001.fastq.gz
5010_39_S39_L003_R2_001.fastq.gz
5010_3_S3_L003_R1_001.fastq.gz
5010_3_S3_L003_R2_001.fastq.gz
5010_40_S40_L003_R1_001.fastq.gz
5010_40_S40_L003_R2_001.fastq.gz
5010_41_S41_L003_R1_001.fastq.gz
5010_41_S41_L003_R2_001.fastq.gz
5010_4_S4_L003_R1_001.fastq.gz
5010_4_S4_L003_R2_001.fastq.gz

Available data

<8b>
;NޤL<b0>T<aa>*<99><b9><e6><9a>sI`<e7>?<fb><97><c5>j<b5>y_,<ef><ff><b3><fc><9f><d3><f7><ff><fb><ff><fe><ff><ea>}u<de>Y<bc>/֫<f5><fb><e2><e5><e5><e5><ff>,<de><bc><bf><bc><8e><87><d3><fe><b0>?<fd><f7><e1>x<da><8f><a7><d3>?<c7><87><c3><fe><c8><e3>x<ee>8<df><a7><ff><f6><e7><c7><e1>t<e3>X<9d>λ|<b1>s<de>;<8f>?<9d>G8<91><8d><c3><fe>p<de>:<da><c3><ea><e7><a5><f6>糝<9f><e8>;O:f+<9e><8e>!<9e><ee>x^<8e><89><ae><93>'8o<fc><f3><df><ff>|<ff><af><ef>X{<bf>l<fe><f3><9f><f8><cb><c5>۪
<fe><fe>Ǒ^//<fa><fc><8d>W<bf>?1<ee><8c>0<b0><9c>a<e2><b0><fb>{0f:9B<a8><f6>D<e4><dc>΃Y뼎phB<e6>B<e7><94><b3>  @<85><82>ӳ؁<9f><8a><cd><f3><8a><fb><f8>><de>>9<f9>vZ<fc>ծ<fe><e9>$<84><f6><be><e0>#<be> <88><87><b5><bc><a4><a3>O&<8b><e1><91><db><e4><b8><99>o:̓<c1>!<ce>&
Qr6Y<8e>#Đ<e1>\.zl<81><ff>'<b4>6<f8><9b><dd><e2><a5>~p<86><91>@<e0><81><f4><ec>!~<f4><c5>]<81><96><b2>,M<8d><c9><b0><87><dc>'ȴ<a9>'<e0><f3>lhI
#/<a5><f7>8<85><d3><c1>=sn<a1>?k
<85>`<b3><dd>
M<eb>؃<83>m<f0><df>^W<d9>9<fc>
4<88><c7>=<c3><fb>D
<92>{<c8>)bFCe<89><cc>š<88>Y<c3>P<97><a2><e6>ߛ<fa><e7>"<89><90><ba><e8><f4><99>j<f3><b5><f9>h<b4><c1><db>-6=<f0><c1> <81>.<ee>G" 

<f7>G<c7>?<df>:<e8>/_<bc><d2>j<a0><fc>(<84><96><dd><e5><96><c0><8c><ac>ۥ<86><84><fb><e0>J'<91><f2><e1><98><cc>t<c0>k`SG<d3>X><d2><ce>
q<cf><ff>;[<e3><ee>0 3<be>qϿ<e6>2<a7><87><fe>n<dd>Q<9e><d3>=<e5>V0<a2>=0:<a3><da>Bc+!,ʣ0
<ba><91>0 

Abundance estimates

  • Generate abundance estimates using Kallisto
  • Used Trinity RNA-seq to assemble matrix to generate gene expression matri

Abundance data

Abundance matrix (estimates generated with Kallisto, matrix generated by Trinity RNA-seq assembly)
Contig X5010_1_S1_L003_R1 X5010_1_S1_L003_R2 X5010_2_S2_L003_R1
contig_2632 16.2705 25.966000 6.88181
contig_4568 0.0000 0.000000 0.00000
contig_2580 300.0500 268.228000 212.03100
contig_1896 2.0000 2.000000 0.00000
contig_590 1007.6700 543.944000 506.597001
contig_3193 25.7476 0.397017 7.17347

Code for Differential Gene Expression

deseq2.colData <- data.frame(condition=factor(c(rep("control", 8), rep("low pH", 6))), 
                             type=factor(rep("single-read", 14)))
rownames(deseq2.colData) <- colnames(data)
deseq2.dds <- DESeqDataSetFromMatrix(countData = countmatrix,
                                     colData = deseq2.colData, 
                                     design = ~ condition)
dim(countmatrix)
dim(deseq2.colData)
deseq2.colData
deseq2.dds

Code for Differential Gene Expression

deseq2.colData <- data.frame(condition=factor(c(rep("control", 8), rep("low pH", 6))), 
                             type=factor(rep("single-read", 14)))
rownames(deseq2.colData) <- colnames(data)
deseq2.dds <- DESeqDataSetFromMatrix(countData = countmatrix,
                                     colData = deseq2.colData, 
                                     design = ~ condition)
dim(countmatrix)
dim(deseq2.colData)
deseq2.colData
deseq2.dds

The Result: DGE for Snow Crabs

Next Steps

  • Conduct DGE using all 63 samples
  • Update code to combine forward and reverse sequences in DESeq
  • Visualize data in other ways
    • Hierarchical Clustering Heatmap
    • PCA
  • Create and annotate a de novo snow crab transcriptome