Hi everyone,
I'm new to working with TCGA data and I'm having trouble deciding between cBioPortal and UCSC Xena Browser for downloading expression and clinical data.
Specifically, I'm trying to reproduce an analysis using expression values (e.g., for boxplots comparing gene expression between high/low groups of another gene), and I've run into some confusion:
My questions for those with more experience:
- What are the main practical differences between cBioPortal and Xena in terms of the expression data they provide (units, normalization method, pipeline used)?
- In what situations is it better to use one over the other? (e.g., clinical/mutation data vs. expression analysis vs. cross-cohort comparisons with GTEx)
- If I need real TPM values (not RSEM normalized counts) for a TCGA cohort, is Xena the more reliable source, or is there a way to get true TPM from cBioPortal as well?
- Are there known caveats when mixing data from both sources (e.g., different sample sets, different reference genome versions, batch effects)?
Any guidance, documentation links, or personal experience would be really appreciated. Thanks in advance!
1 answer
For the analysis you actually described - boxplots split by high/low of another gene within one TCGA cohort - the units don't matter. RSEM and TPM are monotonically related within a sample set, so stratifying on gene A and comparing gene B gives you the same picture either way. I wouldn't spend time chasing TPM for that.
Where it does matter is cross-cohort work, and there the answer is clear: use the Xena Toil recompute (the TCGA TARGET GTEx cohort), which reprocessed all three through one pipeline and gives log2(TPM+0.001) on hg38/gencode v23. That uniform reprocessing is the entire point of it. Taking cBioPortal's TCGA RSEM and comparing it against GTEx from somewhere else is exactly the batch-effect trap you're asking about, since the pipeline and the reference both differ.
In practice I'd use cBioPortal for clinical and mutation data, because its per-study flat files are much easier to work with, and Xena Toil for expression whenever GTEx is in the picture. Just don't put expression from both into the same matrix.
Log in to answer this question.