NanoTube
Workflows
Standard Workflow
library(NanoTube)
# Process and normalize NanoString data
dat <- processNanostringData(
nsFiles = example_data,
sampleTab = sample_info,
idCol = "RCC_Name",
groupCol = "Sample_Diagnosis",
normalization = "nSolver"
)
# Run differential expression analysis using Limma
limmaResults <- runLimmaAnalysis(dat, base.group = "None")
# Generate volcano plot of differential expression results
deVolcano(limmaResults, plotContrast = "Autoimmune.retinopathy")
# Run gene set enrichment analysis
fgseaResults <- limmaToFGSEA(limmaResults, gene.sets = ExamplePathways)
Input: RCC files or tabular expression data, sample metadata.
Output: Normalized ExpressionSet, differential expression statistics, volcano plots, and GSEA results.
When to Use
- Processing, quality control, and normalization of NanoString nCounter data (RCC files or tabular counts) using
processNanostringData.
- Performing differential expression analysis on NanoString data using
runLimmaAnalysis.
- Performing Gene Set Enrichment Analysis (GSEA) directly from differential expression results using
limmaToFGSEA or nsdiffToFGSEA.
- Visualizing NanoString data quality using
positiveQC, negativeQC, nanostringPCA, or RLE plots.
When NOT to Use
- For high-throughput RNA-seq data, use standard pipelines like
DESeq2 or edgeR.
- For microarray data, use
limma directly.
Data Requirements
- Raw NanoString RCC files or a CSV/TXT expression matrix.
- A sample metadata CSV file containing sample characteristics and matching file names.
Key Parameters
- normalization ("nSolver"): Normalization method in
processNanostringData ("nSolver", "RUVIII", "RUVg", or "none").
- bgType ("threshold"): Method for background assessment ("threshold" or "t.test").
- bgPVal (0.01): P-value threshold for the t-test background method.
- skip.housekeeping (FALSE): Whether to skip housekeeping normalization.
- n.unwanted (1): Number of dimensions of unwanted variation to remove in RUVg/RUVIII.
- base.group (NULL): Control group for contrast in
runLimmaAnalysis.
Best Practices
- Perform quality control checks on positive controls using
positiveQC and negative controls using negativeQC before downstream analysis.
- Verify that positive scaling factors are between 0.3 and 3, and R-squared values are greater than 0.95.
- Check housekeeping normalization scale factors to ensure they are within the recommended 0.1-10 range.
Common Pitfalls
- Mismatched sample names between RCC files and the sample metadata table; specify
idCol in processNanostringData to ensure correct merging.
- Including empty factor levels in the design matrix; drop them using
droplevels() before analysis.
Alternatives
NanoStringDiff for differential analysis using a generalized linear model.
limma for general linear modeling.
RUVSeq for removing unwanted variation.
Citations
- Lundy et al. 2018 (referenced in vignette)
- Ritchie et al. 2015 (limma reference)
References
1---2name: nanotube3description: NanoTube4---56# NanoTube78## Workflows910### Standard Workflow1112```r13library(NanoTube)1415# Process and normalize NanoString data16dat <- processNanostringData(17 nsFiles = example_data,18 sampleTab = sample_info,19 idCol = "RCC_Name",20 groupCol = "Sample_Diagnosis",21 normalization = "nSolver"22)2324# Run differential expression analysis using Limma25limmaResults <- runLimmaAnalysis(dat, base.group = "None")2627# Generate volcano plot of differential expression results28deVolcano(limmaResults, plotContrast = "Autoimmune.retinopathy")2930# Run gene set enrichment analysis31fgseaResults <- limmaToFGSEA(limmaResults, gene.sets = ExamplePathways)32```33Input: RCC files or tabular expression data, sample metadata.34Output: Normalized ExpressionSet, differential expression statistics, volcano plots, and GSEA results.3536## When to Use37- Processing, quality control, and normalization of NanoString nCounter data (RCC files or tabular counts) using `processNanostringData`.38- Performing differential expression analysis on NanoString data using `runLimmaAnalysis`.39- Performing Gene Set Enrichment Analysis (GSEA) directly from differential expression results using `limmaToFGSEA` or `nsdiffToFGSEA`.40- Visualizing NanoString data quality using `positiveQC`, `negativeQC`, `nanostringPCA`, or RLE plots.4142## When NOT to Use43- For high-throughput RNA-seq data, use standard pipelines like `DESeq2` or `edgeR`.44- For microarray data, use `limma` directly.4546## Data Requirements47- Raw NanoString RCC files or a CSV/TXT expression matrix.48- A sample metadata CSV file containing sample characteristics and matching file names.4950## Key Parameters51- **normalization** ("nSolver"): Normalization method in `processNanostringData` ("nSolver", "RUVIII", "RUVg", or "none").52- **bgType** ("threshold"): Method for background assessment ("threshold" or "t.test").53- **bgPVal** (0.01): P-value threshold for the t-test background method.54- **skip.housekeeping** (FALSE): Whether to skip housekeeping normalization.55- **n.unwanted** (1): Number of dimensions of unwanted variation to remove in RUVg/RUVIII.56- **base.group** (NULL): Control group for contrast in `runLimmaAnalysis`.5758## Best Practices59- Perform quality control checks on positive controls using `positiveQC` and negative controls using `negativeQC` before downstream analysis.60- Verify that positive scaling factors are between 0.3 and 3, and R-squared values are greater than 0.95.61- Check housekeeping normalization scale factors to ensure they are within the recommended 0.1-10 range.6263## Common Pitfalls64- Mismatched sample names between RCC files and the sample metadata table; specify `idCol` in `processNanostringData` to ensure correct merging.65- Including empty factor levels in the design matrix; drop them using `droplevels()` before analysis.6667## Alternatives68- `NanoStringDiff` for differential analysis using a generalized linear model.69- `limma` for general linear modeling.70- `RUVSeq` for removing unwanted variation.7172## Citations73- Lundy et al. 2018 (referenced in vignette)74- Ritchie et al. 2015 (limma reference)7576## References77- Homepage: bioconductor.org/packages/NanoTube78- Vignette: https://bioconductor.org/packages/release/bioc/vignettes/NanoTube/inst/doc/NanoTube.html