Skip to content

creating_subset_sessions

Carolina Monzó edited this page May 29, 2026 · 2 revisions

Creating curated subset sessions

SQANTI-browser supports iterative transcriptome curation by linking its local interactive HTML reports to native UCSC Genome Browser utilities. You can filter candidate isoforms offline by structural category or quality metrics, export their identifiers, and load a custom subtrack in UCSC that shows only that curated subset—while keeping the full SQANTI-browser hub available for broader context.

This workflow is useful for targeted inspection and sharing of specific transcript classes (for example, validated novel isoforms or disease-associated candidates) without rebuilding the hub.

Overview

Step Where What you do
1 SQANTI-browser run Generate hub and HTML tables (--tables)
2 HTML report Filter and/or select isoforms
3 HTML report Generate Filter String → copy isoform IDs
4 UCSC Table Browser Paste IDs, output custom track
5 UCSC Genome Browser View subset alongside hub + public tracks
image

Figure. a Selection of My Sessions in the UCSC Genome Browser. b My sessions functionality allows saving the current browser view, data and configuration into a shareable session. c A link to share session is generated and available to copy and share with collaborators. d Visualization of the shared session by opening the shared link in a navigator allows for identification of a highlighted region of interest for collaborative curation.

Prerequisites

  1. A completed SQANTI-browser hub loaded in UCSC (Hosting Guide).
  2. Interactive HTML tables generated with --tables:
python -m sqanti_browser \
    --gtf your_corrected.gtf \
    --classification your_classification.txt \
    --output my_hub \
    --genome hg38 \
    --tables

Reports are written to table_reports/ inside the output directory:

  • complete_transcriptome_isoforms.html — all categories
  • {category}_isoforms.html — per structural category (e.g. novel_not_in_catalog_isoforms.html)

You can also generate tables alone (without re-running the hub):

python src/filter_isoforms.py \
    --classification your_classification.txt \
    --output-dir table_reports

See Interactive HTML Tables for filtering syntax, export buttons, and Trix search.


Step 1: Curate candidates in the HTML report

Open the relevant HTML file in your browser (local file or hosted copy).

Filter the table

Use the column filters in the table header:

  • Numeric columns (e.g. length, exons, FL): ranges like 100:1000, 100:, or :1000; a single number is an exact match.
  • Dropdown columns: exact match on categorical fields (e.g. coding, subcategory).
  • Text columns: substring search (case-insensitive).

Category-specific reports already restrict rows to that structural category; use complete_transcriptome_isoforms.html to work across categories.

Select specific rows (optional)

Click table rows to toggle selection (multiple rows allowed). Selected rows are highlighted.

Generate Filter String behavior

  • If one or more rows are selected, only selected isoforms are exported.
  • If no rows are selected, all rows matching the current filters are exported (the full filtered set).

Step 2: Export isoform identifiers

  1. Click Generate Filter String in the table toolbar.
  2. A dialog shows isoform IDs, one per line (from the isoform column).
  3. Select all text and copy the list.

These IDs match the name field of transcripts in the SQANTI-browser bigBed track and must be pasted unchanged into UCSC.

You can also Export the filtered table (Excel/CSV/Copy) for record-keeping; use Generate Filter String specifically for the Table Browser workflow.


Step 3: Build a custom subset track in UCSC Table Browser

With your SQANTI-browser hub connected in UCSC:

  1. Go to Tools → Table Browser.
  2. Select the same genome assembly as your hub (e.g. Human / hg38).
  3. Under group, choose your Track Hub (or the group that lists your hub tracks).
  4. Under track, select the main SQANTI3 track (or the category track you want as the source).
  5. Set region as needed (often genome for all loci, or a locus of interest).
  6. Click Identifiers (or filter by identifiers, depending on UCSC version).
  7. Paste the copied list (one isoform ID per line) for the name field.
  8. Set output format to custom track (or GTF / BED if you prefer a file).
  9. Run the query and click get custom track in Genome Browser (or download and load via My Data → Custom Tracks).

UCSC returns a temporary custom track containing only the pasted isoforms. Your full SQANTI-browser hub remains in the track list, so you can compare the subset against the complete transcriptome and native UCSC data (epigenetic marks, conservation, variation, etc.).


Step 4: Inspect and iterate

Typical curation loop:

  1. Explore the full hub in UCSC (filtering, Trix search, validation tracks).
  2. Refine candidates in the HTML table (quality metrics, category, gene association).
  3. Export a subset custom track for focused review or screenshots.
  4. Share the hub URL plus the list of isoform IDs (or a saved custom track file) with collaborators.

Repeat Steps 1–3 as criteria tighten—for example, from all NIC isoforms to a short list with CAGE support and high FL counts.


Tips and troubleshooting

Issue Suggestion
No IDs in the dialog Apply filters or select rows before Generate Filter String.
Table Browser finds no matches Confirm the hub is connected; IDs must match isoform values in classification.txt exactly.
Subset track empty Check that the track in Table Browser is the SQANTI3 bigBed track that contains those IDs.
Very large ID lists UCSC may limit custom track size; split into batches or narrow filters in HTML first.
Need search instead of a fixed list Use Generate Trix String and UCSC hub search (Trix Search Syntax).

For hub-side filtering without exporting IDs, see Filtering in UCSC.


Related pages

Citation

If you use this workflow in a publication, cite the SQANTI-browser bioRxiv preprint and the SQANTI-browser repository.

Clone this wiki locally