← LeaderboardThe Skill Leaderboard

bioconductor-shortread

This package implements sampling, iteration, and input of FASTQ files. The package includes functions for filtering and trimming reads, and for generating a quality assessment report. Data are represented as DNAStringSet-derived objects, an

Published by bioMate-AI ↗bioMate-AI/biomate-bioconductor-kb

Try your first task

bioconductor-shortread

Start a fresh conversation. Replace the highlighted placeholders.

Use bioconductor-shortread to generate an HTML quality-assessment report for [FASTQ files], checking quality-score encoding and using memory-efficient processing for large inputs.

Required inputs

  • [FASTQ files]

User-approved starter prompt based on a pinned source version; check current skill requirements before running. Task evidence ↗

SKILL.md

name: bioconductor-shortreaddescription: This package implements sampling, iteration, and input of FASTQ files. The package includes functions for filtering and trimming reads, and for generating a quality assessment report. Data are represented as DNAStringSet-derived objects, anwhen_to_use: "Use when: Iterative FASTQ Processing: Processing massive FASTQ files in memory-efficient chunks using FastqStreamer() and yield().; Random Subsampling: Drawing a random sample of reads from a FASTQ file using FastqSampler() for quick inspection.; Quality Assessment: Generating HTML quality assessment reports across multiple FASTQ files using qa() and report().; Filtering and Trimming: Removing low-quality r. Not for: For whole-genome alignments or flexible pairwise alignment, use Biostrings or pwalign instead because ShortRead is designed for basic input, QA, and filtering rather than complex alignments."user-invocable: false

ShortRead

Dependencies & Environment

Package-intrinsic requirements from the Bioconductor landing page — reproduce in any R environment.

  • Version: 1.70.0 · Bioconductor: 3.23 · R: ≥ 4.6
  • Depends: BiocGenerics, BiocParallel, Biostrings, Rsamtools, GenomicAlignments
  • Imports: Biobase, S4Vectors, IRanges, Seqinfo, GenomicRanges, pwalign, hwriter, lattice, latticeExtra
  • Install: BiocManager::install("ShortRead")

When to Use

  • Iterative FASTQ Processing: Processing massive FASTQ files in memory-efficient chunks using FastqStreamer() and yield().
  • Random Subsampling: Drawing a random sample of reads from a FASTQ file using FastqSampler() for quick inspection.
  • Quality Assessment: Generating HTML quality assessment reports across multiple FASTQ files using qa() and report().
  • Filtering and Trimming: Removing low-quality reads or trimming tails using nFilter() and trimTailw() before writing back to disk with writeFastq().

When NOT to Use

  • For whole-genome alignments or flexible pairwise alignment, use Biostrings or pwalign instead because ShortRead is designed for basic input, QA, and filtering rather than complex alignments.

Data Requirements

  • Input: FASTQ files (e.g., .fastq, .fastq.gz) or legacy Solexa export files (s_N_export.txt).
  • Output: Filtered FASTQ files, ShortReadQ objects, or HTML QA reports.
  • Data Structures: Reads are represented as DNAStringSet objects and quality scores as FastqQuality or BStringSet objects.

Key Parameters

  • fl: The file path to the FASTQ file being read or streamed.
  • destination: The output file path used in writeFastq().
  • type: The format type specified in qa() (e.g., type="fastq").
  • dirPath: The directory path used in readXStringColumns() to locate files.
  • pattern: The regular expression pattern used to match files in readXStringColumns().
  • colClasses: A list specifying the class of each column to be read in readXStringColumns().

Best Practices

  • Use FastqStreamer() in a repeat loop to process large FASTQ files in chunks, preventing memory exhaustion.
  • Use FastqSampler() to draw a representative subset (e.g., 1M reads) for rapid quality assessment.
  • Generate a QA report using qa() and view it in a browser using browseURL(report()) before starting downstream analysis.
  • Check the quality score encoding of your FASTQ files using encoding(quality()) to ensure accurate quality filtering.

Common Pitfalls

  • Out of Memory Errors: Attempting to load an entire massive FASTQ file into memory with readFastq(). Fix: Use FastqStreamer() to iterate through the file in manageable chunks.
  • Incorrect Quality Trimming: Applying the wrong Phred score threshold because of unknown encoding. Fix: Verify the encoding using encoding(quality(fq)) before using trimTailw().
  • Slow Text Parsing: Using base R functions to read specific columns of sequence text files. Fix: Use readXStringColumns() to quickly parse columns directly into DNAStringSet and BStringSet objects.

Alternatives

  • Biostrings: For general sequence manipulation, pattern matching (matchPDict), and whole-genome alignments.
  • pwalign: For flexible pairwise sequence alignment.

Citations

  • Morgan M, et al. (2009) "ShortRead: a bioconductor package for input, quality assessment and exploration of high-throughput sequence data." Bioinformatics.

References


Run this on BioMate

This skill is the knowledge layer — when, why, and how to use shortread. To run this analysis on your own data with managed compute, automated QC, and reproducible outputs, use BioMate — free to start.

▶ Open shortread on BioMate →