Skip to content

Releases: bcgsc/NanoSim

v3.1.0

13 Apr 07:04
23911b6
Compare
Choose a tag to compare

This release contains several major bugfixes + new added features as outlined below.

General changes:

  • updated requirements.txt
    • added missing package names (fixes #135)
    • updated package version (fixes #159, #120, and #131)
  • fixed bug where head/tail lengths are calculated without considering the strand of the alignment
  • fixed bug where sequence IDs in _aligned_error_profile do not match those in _aligned_reads.fastq (fixes #151)
  • set default file compression level to 1 (previously level 6)

genome mode:

  • fixes bug where -c option crashes

transcriptome mode:

  • new options for read_analysis.py:
    • -c detect chimeric reads
    • -q quantify transcript expression
    • -n normalize expression values by transcript length
  • new expression quantification algorithm based on abundance estimation in metagenome mode
  • fixed bug where identical read lengths are simulated for the same transcript (fixes #155; thanks Haoran Li)
  • fixed bug where transcripts without a ENS name prefix cannot be simulated, which may result in an infinite loop (fixes #112, #156)
  • optimized various parts of simulation (see #150, #158)
  • fixed bug where head/tail lengths are calculated without considering genome alignments in addition to transcriptome alignments (fixes #136)

metagenome mode:

  • the option --dna_type_list is not required when reference genomes are streamed from RefSeq

v3.0.2

17 Sep 21:15
f8970b3
Compare
Choose a tag to compare

This release is the version used to generate Meta-NanoSim manuscript.

Changes include:

  1. Update README.md to include more information about dependencies and installation instructions.
  2. Bug fix for the pysam get cigar string function.
  3. Bug fix for simulated read length output.
  4. Included the option for EM base-level abundance quantification without chimeric reads detection.

v3.0.1

24 Jun 19:00
Compare
Choose a tag to compare

In this release, we are introducing a new feature about compressed files and have fixed a few bugs as follows:

  1. NanoSim now supports reading .gz sequence files, and bam files. When processing intermediate files, it saves bam files instead of sam files to reduce disk space.

  2. Every subprocess is re-seeded before running, to avoid the repetitive random sequences in simulated reads.

  3. Lognormal distribution simulation and -max_len feature bug was fixed (#118).

  4. Bug fix for read_analysis.py genome mode (#123).

  5. Added clarification to the README file about external programs needed to run NanoSim, including GenomeTools (gt) which is required to work with gtf/gff files for Intron Retention analysis.

V3.0.0

19 Apr 18:39
Compare
Choose a tag to compare

Official release of version 3.0.0

Major improvements from previous beta version:

  1. Quantification of metagenome abundance levels using EM algorithm

  2. Quantification mode now includes metagenome abundance level estimation. Parameters are a bit different now.

  3. requirements.txt includes joblib library, and the version numbers are removed. So users may install the latest versions of each package with best compatibility.

Minor changes:

  1. human_NA12878_cDNA_Bham1_guppy model is re-trained.

  2. README is updated with more info on input files

NanoSim v3.0.0 pre-release

19 Nov 14:23
Compare
Choose a tag to compare
Pre-release

Here we are announcing NanoSim v3.0.0 pre-release, and we will make it an official one once the manuscript is published. Please note that the tar ball attached doesn't contain any pre-trained models, so the downloading will be much faster.

In this release, NanoSim is able to simulate metagenomes with variable abundance profiles.

Key features include:

  1. Quantify species abundance level, which is not readily available in existing abundance quantification tools

  2. Simulate multiple samples in one batch

  3. Simulate chimeric reads in metagenome mode and genome mode

  4. Simulate abundance variance deviated from expected value

Bug fixes and small improvements:

  1. Fixed the bug in fastq simulation which leads to discrepancy between quality score length and sequence length

  2. Changed the way of importing model files, allowing better compatibility

  3. Re-trained all the models to be compatible with the model importing

  4. Added 2 more pre-trained models for metagenome datasets

V2.6.0

09 Jun 04:48
a640384
Compare
Choose a tag to compare

In this release, there's a key update in the simulation stage. NanoSim is capable of simulating fastq files now! We characterized a few datasets and used truncated log-normal distribution models to simulate the base quality of unaligned reads, matched bases, erroneous bases for genome and transcriptome reads separately.

Most of the changes in this release are for the simulation stage.

Other features:

  1. Perfect reads can have poly(A) tails now.

  2. Read files and error profiles for unaligned reads are separated from aligned reads now.

Bug fixes:

  1. Minor bugs in IR modeling, eliminated the exon extraction biases and read orientation problem

  2. Reversed the strandness information in simulation, which was opposite to the real orientation

  3. Solved occasional crashes when simulating unaligned reads

  4. Fixed the reversed head/tail length for reads from negative strand in transcriptome simulaiton

  5. Added missing file in pre-trained model

NanoSim v2.5.1

24 Jan 01:49
Compare
Choose a tag to compare

To download only the source scripts, please go to url

Features

  1. In this release, we provide 6 pre-trained models, including 3 RNA-seq models, which are human direct RNA, cDNA, mouse cDNA, and 3 DNA-seq models, which are human DNA dataset basecalled by 3 different basecalling algorithms. These models can be downloaded from pre-trained_models.

  2. We also provide a few more homopolymer models to mimic different basecalling algorithms under different sequencing settings (direct RNA or cDNA 1D2 or cDNA 1D).

  3. We implemented -r, --read_type in transcriptome simulation mode. Since different read type, directRNA, cDNA 1D2, or cDNA 1D, has an effect on the homopolymer bias, users can specify which one to simulate based on.

Minor bug fixes

  1. A minor bug in detect_ir module in the characterization stage.

  2. Prevents python from spawning out processes when only one processor is requested.

  3. Display the correct help information for transcriptome simulation when wrong parameters are passed in.

v2.5.0

23 Dec 23:35
5f8d7f9
Compare
Choose a tag to compare

In this release, we implemented a few new features and resolved a few bugs.

New features:

  1. Multiprocessing in the simulation stage. Based on our experience, 4 to 12 processers balance well between runtime and memory usage for simulating 1 million reads. The memory increases roughly linearly due to the nature of Python multiprocessing. As a rough estimate, it takes less than 5G memory to simulate human transcriptome with 4 processers.

  2. Homopolymer simulation. For this parameter, we provide three options, each targeting each basecaller: Albacore, Guppy, and Guppy + flipflop model

  3. Simulate aligned reads first, and then unaligned reads. These two types of reads are stored in separate files for better user experience.

Bug fixes:

  1. Fixed retained intron / deleted exon problem in error calculation

  2. Fixed index out of range bug in the simulation stage

Simulating transcriptome ONT reads

18 Jul 21:51
Compare
Choose a tag to compare
Pre-release

This is a pre-release version which is now capable of simulating both genomic and transcriptomic (cDNA and directRNA) ONT reads with even increased performance. Users may run the pipeline in "genome" or "transcriptome" mode. The transcriptome mode also models features of the library preparation protocols used, including intron retention events in cDNA and direct RNA reads. Further, it profiles transcript expression patterns.

We provided a very comprehensive README file for more information on how to run the pipeline in both modes.

Users who may have tried Trans-NanoSim before, can now rely on this version to simulate transcriptome ONT reads.

Major updates since pre-release v2.3-beta:

  1. Added an optional flag (--uracil) to convert the thymine (T) bases to uracil (U) in the output fasta format. It is helpful if you are dealing with direct RNA reads.
  2. Fixed a bug related to input file requirements when you use (--no_model_ir). Refer here: #63
  3. Increased simulation speed substantially when IR modelling is not set (--no_model_ir). It performs 5-folds faster now. We also removed some redundant and unnecessary code lines to improve the overall performance of the pipeline.
  4. As for "Perfect" reads (--perfect), we are now considering expression profiles when simulating them. Therefore your "perfect" error-free reads are going to follow your desired expression levels as well.

Please keep using the pipeline and share your thoughts on it. Cheers!

Simulating transcriptome ONT reads

17 Jun 23:31
6f44514
Compare
Choose a tag to compare
Pre-release

NOTE: Please do not use this release as it has an input requirement bug.

This is a pre-release version which is now capable of simulating both genomic and transcriptomic (cDNA and directRNA) ONT reads with even increased performance. Users may run the pipeline in "genome" or "transcriptome" mode. The transcriptome mode also models features of the library preparation protocols used, including intron retention events in cDNA and direct RNA reads. Further, it profiles transcript expression patterns.

We provided a very comprehensive README file for more information on how to run the pipeline in both modes.

Users who may have tried Trans-NanoSim before, can now rely on this version to simulate transcriptome ONT reads.

This version has been tested on Python 2.7 and Python 3.6 with the latest compatible packages respectively.