DESeq2: use of unmix() function for deconvolution of whole blood
1
0
Entering edit mode
nsimons • 0
@nsimons-12933
Last seen 4.7 years ago

Hi, 

I'm wondering if it's possible to use the unmix() function from the latest DESeq2 release for deconvolution of global gene expression from whole blood. I know programs like CellMix can do this without prior empirical knowledge of cell type heterogeneity from matched samples, but it would be great to just use this new function in DESeq2 for the task.

Thanks in advance!

Noah 

deseq2 bioconductor rnaseq differential gene expression • 1.1k views
ADD COMMENT
1
Entering edit mode
@mikelove
Last seen 1 hour ago
United States

hi Noah,

What's the question exactly? For unmix() you need to specify a matrix of "pure" expression profiles, and the function will then estimate the composition of each profile in "x", a matrix of sample gene expression profiles. It won't work without the "pure" profiles.

ADD COMMENT
0
Entering edit mode

Hi Michael, 

Thanks for the reply. My question is if the unmix() function will work for deconvolution of RNAseq data from whole blood. Using DESeq2 I'm looking for DE genes between virally infected and uninfected monkeys (with 21 infected individuals and 8 uninfected, ~30M read/ind), yet I'm only getting a single differentially expressed gene. It's been suggested to me that because the whole blood is composed of several cell types (e.g. reticulocytes, platelets, leukocytes) and because there's cell composition heterogeneity between individuals this might be the cause for the low number of DEGs. 

So, my hope was that deconvolution may give insight into the relative contribution of the distinct cell types to global gene expression, or allow me to look at gene expression profiles of say just leukocytes for example. We don't know the relative proportions of cell types in the source blood samples, though it's been suggested that some programs, such as CellMix, can deconvolve cell-type signatures from whole-blood with out any prior knowledge of cell-type frequencies. My hope was that this new unmix() function might also do be able that, or alternatively, perhaps unmix() could be used with estimates of typical cell type proportions from whole blood. 

If you have any other ideas about why I might not be getting more DEGs from this experiment that would be appreciated too!

Thanks,

Noah 

ADD REPLY
0
Entering edit mode

hi Noah,

unmix() won't be able to give you the gene expression profiles for subtypes. We just give an estimate of the vector of weights for each subtype. I'm not sure how well it will work if the celltypes are very similar. We have done testing on mixed tissue samples, to figure out the ratio of tissue types, using GTEx tissue mediods for "pure".

"yet I'm only getting a single differentially expressed gene"

Can you post a PCA plot of the samples?

ADD REPLY
0
Entering edit mode

Yes, I produced the PCA plot with the following, where I is infected, U is uninfected:

> ddsHTSeq<-DESeqDataSetFromHTSeqCount(sampleTable=sampleTable, directory=directory, design=~condition)
> dds<-DESeq(ddsHTSeq)
> rld<- rlogTransformation(dds, blind=TRUE)
> plotPCA(rld, intgroup=c('condition')

The samples are clearly not separating according to condition, any way to tell if this reflects the actually biology or just signal-to-noise?

Thanks!

Noah

ADD REPLY
0
Entering edit mode

Additionally, here are the heatmaps for DDS, RLD, and VSD, respectively, as well as the sample to sample distances:

ADD REPLY
0
Entering edit mode

The differences are not larger than the biological within-group variability and/or technical variability. ~30 million reads is plenty for most experiments, to see differences at the level n=10-20 per group. So my takeaway is that the signal is either missing in this data (i.e. not at the bulk level) or very small. unmix() cannot estimate the cell-type-specific expression profiles for each sample.

ADD REPLY
0
Entering edit mode

Thank you Michael, I appreciate the feedback!

Noah

ADD REPLY

Login before adding your answer.

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