So I'm trying to use an abundance file generated by grinder (...-ranks.txt) to produce reads for the same list of sequences, species in my case. By when using the "ranks.txt" generated by the program as an input for -af flag I get the error : "Error: Requested reference sequence 'FR749954' in file '20species-ranks.txt' does not exist in the input database." I don't understand how I should be running the command to get what I want, or which is the right format for fasta IDs. Anyone have a clue? First...
Hi. I installed Grinder on my Mac. However, when I type grinder in my terminal, I get the following error: zsh: command not found: grinder Would you please help me to resolve this issue? Thanks
Hello, I am having the same problem as Maria, but the necessary module in my case is Math::Random::MT, when trying to install it via cpan I get the dollowing error message /Users/imac/opt/anaconda3/lib/5.26.2/darwin-thread-multi-2level/CORE/perl.h:694:10: fatal error: 'sys/types.h' file not found Any idea on how to resolve this? Regards, Najoua
Hello, I am having the same problem as Maria, but the nexessary module in my case is Math::Random::MT, when trying to install it via cpan I get the dollowing error message /Users/imac/opt/anaconda3/lib/5.26.2/darwin-thread-multi-2level/CORE/perl.h:694:10: fatal error: 'sys/types.h' file not found Any idea on how to resolve this? Regards, Najoua
Error: No genome sequences could be used
use perl -MCPAN -e shell install Module::Install::PodFromEuclid
For me installing the perl module: Module::Install did the trick. I used this to install it: https://how-to.fandom.com/wiki/How_to_install_PERL_modules
Hello! I am a begginer bioinformatician and I am having the following error when trying to install Grinder: $ perl Makefile.PL make Can't locate inc/Module/Install.pm in @INC (you may need to install the inc::Module::Install module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.30.0 /usr/local/share/perl/5.30.0 /usr/lib/x86_64-linux-gnu/perl5/5.30 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.30 /usr/share/perl/5.30 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base)...
Hello! I am a begginer bioinformatician and I am having the following error when trying to install Grinder: $ perl Makefile.PL make Can't locate inc/Module/Install.pm in @INC (you may need to install the inc::Module::Install module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.30.0 /usr/local/share/perl/5.30.0 /usr/lib/x86_64-linux-gnu/perl5/5.30 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.30 /usr/share/perl/5.30 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base)...
Hello! I am a begginer bioinformatician and I am having the following error when trying to install Grinder: $ perl Makefile.PL make Can't locate inc/Module/Install.pm in @INC (you may need to install the inc::Module::Install module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.30.0 /usr/local/share/perl/5.30.0 /usr/lib/x86_64-linux-gnu/perl5/5.30 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.30 /usr/share/perl/5.30 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base)...
Thanks for reply. I was wondering if you could tell me what would be the minimal optimum total reads?
Hi Muhammet, First, thing, the default -abundance_model is uniform, so if your goal is to produce an uniform distribution of all reference sequences, you can omit the -abundance_file parameter. Second, the default -total_reads is 100, so with such as small number, you may not have exactly 10 reads from each of your 10 references, but close to that (since this process is based on probabilities). Hope this helps! Best, Florent
Is there anyone who can help me out?
Hello, Great work, i appreciate it so much but i am having a little problem. Eventho i ve tried many options i simply can not get the abundance that i specify. I.E. my abundance file looks like below, i should get an equal distribution right? Somehow the grinder-ranks.txt shows the abundance correct but in my grinder-reads.fa file does not yield equal distribution nor never gives me the specified distribution. I am posting the command that i am using altho I have tried it with many parameters . What...
Hello, Great work, i appreciate it so much but i am having a little problem. Eventho i ve tried many options i simply can not get the abundance that i specify. I.E. my abundance file looks like below, i should get an equal distribution right? Somehow the grinder-ranks.txt shows the abundance correct but in my grinder-reads.fa file does not yield equal distribution nor never gives me the specified distribution. I have tried it with many parameters . What am i doing wrong in here? Please help NR_116675.1...
Thank you so much for your help ! It works ! Laetitia
Hi Laetitia, I finally had the time to have a look at your example. The problem is that you added several sources of errors in your command. Specifically, the Balzer homopolymer model is the one that causes the extra indels you observe. Since you want to model Illumina reads anyway, omit any homopolymer model (these models are more suited for 454 reads). And let me re-iterate what I said in a previous email. If you run into issues, you need to find the smallest reproducible example (few reference...
Good morning, I am trying to simulate Illumina sequencing data. My sequences are ~100bp long. I would like to have an error rate similar to Illumina sequencers and a mutation_ratio so that 98% of the errors are substitutions and 2% are indels. I tried this command : grinder -rf ./Inputs/seq_sample10.fasta -tr 9000 -nl 12 -di 0 -af ./Inputs/abund_sample10.txt -id 150 -rd 150 -fq 1 -ql 36 30 -mo FR -dc '-' -un 1 -mutation_dist poly4 3e-3 3.3e-8 -mutation_ratio 98 2 -hd Balzer -cp 1 -ck 0 -mi ./Inputs/tag_sample10.fasta...
Good morning, I am trying to simulate Illumina sequencing data. My sequences are ~100bp long. I would like to have an error rate similar to Illumina sequencers and a mutation_ratio so that 98% of the eroors are substitutions and 2% are indels. I tried this command : grinder -rf ./Inputs/seq_sample10.fasta -tr 9000 -nl 12 -di 0 -af ./Inputs/abund_sample10.txt -id 150 -rd 150 -fq 1 -ql 36 30 -mo FR -dc '-' -un 1 -mutation_dist poly4 3e-3 3.3e-8 -mutation_ratio 98 2 -hd Balzer -cp 1 -ck 0 -mi ./Inputs/tag_sample10.fasta...
Good morning, I am trying to simulate Illumina sequencing data. My sequences are ~100bp long. I would like to have an error rate similar to Illumina sequencers and a mutation_ratio so that 98% of the eroors are substitutions and 2% are indels. I tried this command : grinder -rf ./Inputs/seq_sample10.fasta \ -tr 9000 -nl 12 -di 0 -af ./Inputs/abund_sample10.txt \ -id 150 -rd 150 -fq 1 -ql 36 30 -mo FR \ -dc '-' -un 1 -mutation_dist poly4 3e-3 3.3e-8 -mutation_ratio 98 2 \ -hd Balzer -cp 1 -ck 0 -mi...
Thank you Florent !!
Hi Guilherme, Grinder is not multi-threaded. However, you can run several Grinder processes simultaneously to take advantage of multiple processing cores. For example, you create a small Bash script that runs 1 Grinder process per chromosome. A note about Grinder speed. There can be a specific performance decrease when you use very large genomes (e.g. human chromosomes) or a very large number of smaller genomes, since all reference sequences are read and kept in memory simultaneously by Grinder....
I mean, using multiple cores.
Hi, I'm wondering whether grinder has support to run using threads.
Hi, I'm wondering wheter grinder has support to run using threads.
Hi Aditi, Grinder was written to simulate sequencing errors, but you could likely indirectly use it to include genomic variant "errors". This is an approach I have not tested: 1/ Input your genomes one by one in Grinder and introduce some errors using the error model desired. For the read length parameter, you will need to provide the exact length of your genome to avoid it being truncated or excluded. 2/ After your variants are ready, concatenate them into a single FASTA/FASTQ file. You may need...
Hello, I read about Grinder in the 2016 Nature Reviews Genetics by Escalona, Rocha, and Posada. In table 4 of their paper, they say that Grinder can introduce genomics variants, both indels and SNPs. However, from the documentation, it seems to me that only sequencing errors are introduced (both indels and SNPs). Is it possible to introduce pre-defined genomic variants (both indels and SNPs) in the simulated reads (that are not sequencing errors)? Thanks!
Mutations when no error model specified
Hi Chad, Have a look at the description of the reads: 1 reference=test1 position=1..99 2 reference=test1 position=complement(1..99) No errors were introduced. However, as you see, some of the reads were generated from the reference sequence itself and some others from its reverse-complement, as you would expect from random shotgun sequencing. If your use-case calls for unidirectional reads, have a look at the -unidirectional option. Cheers, Florent
Mutations when no error model specified
Hi Mao, The Illumina model from Korbel assumes that the reads are 100bp. You will need to adjust the parameters if your reads are longer. I suggest you experiment in Excel with this equation (Korbel et al 2009) to keep the same error rate at the last position as you find for reads that are 100 bp: 3e-3 + 3.3e-8 * i^4 Best, Florent
Hi Florent, Hope everything goes well. I simulated some reads with Illumina error model: " -mutation_dist poly4 3e-3 3.3e-8 " using Grinder. I found the error rate is much much higher than expected. For instance, there are lots of errors in this simulated read(length=400base): "@1 reference=*** amplicon=1..434 position=1..400 errors=66%G,73%A,85%G,102%T,118-,139+T,161%T,165%T,173%C,173+A,175%A,177%T,181%A,182-,183-,187%A,187%G,187%C,188%C,189-,191%C,194-,197%C,198%G,198+G,198+T,199%C,200%G,200-,201%A,202+A,204%C,205%C,205%T,205%G,205%C,206%T,207%T,207%T,207%T,207+G,208%A,208%A,210%A,212-,214%T,215%G,215%G,216%G,216-,219-,220%A,222%G,223%A,224%C,224%G,224%T,226%A,226%A,229%C,229%G,230+A,231%C,233%A,233+C,237%T,238%G,239%C,241%A,241%C,241%C,242%G,243%T,243%C,243-,245%T,245%G,246-,247%A,247%C,247%T,247%A,248%G,249%G,250%T,253%G,254%T,254%T,254+C,255%C,255+C,257%T,257%G,257+C,259%G,259%A,259%C,259%C,260%C,260%C,260%C,260-,260-,261%C,261%A,262%A,263%T,264%G,264%A,264%T,264%T,265%G,265%G,265%G,267%C,267%G,267%C,270%A,270%A,271%T,271-,271-,272%A,272%T,272%G,273%C,273%C,274%T,274%T,276%T,276%A,277%T,277%G,278%T,278%G,278-,279%C,279%A,280%C,280%C,281%T,281%A,282%A,282%C,282%A,283%A,284%G,284%G,284+C,285%C,286%C,286%G,286+A,287%T,288%T,288%C,288%T,288%T,289%C,289+T,290%A,290%T,290%T,290%C,290-,290-,291%G,291%T,291%C,291+G,291+T,292%C,292%T,292-,292+T,292+G,293%C,293%T,293%C,293+G,294%G,294%G,294-,294+G,295%T,296%A,296%A,297%G,297%A,297%A,298%G,298-,301%T,301%T,301+A,302%T,302%T,303%C,303%T,303%T,303%T,303-,304%T,304%T,305%T,305+A,306%G,306%C,306%C,306+G,306+G,307%C,307%C,307%G,307%G,308%G,308%T,308%C,308%G,308%C,308%G,308%T,309%C,309%A,309%C,309%C,309-,309-,310%G,310%A,311%C,311%C,311%T,312%T,312%T,312%C,312%C,312-,312-,312+A,313%C,313-,313-,313+C,314%G,314%G,314-,314+T,315%T,315%C,315-,315+A,316%G,316%T,316%C,317%C,317%G,317%G,317-,317+C,318%A,318%T,318+C,318+A,319%A,319%C,319%A,319%T,319%A,320%C,320%A,320-,321%A,321+G,322%T,322%T,322-,322+T,322+A,324%G,324%G,324%T,325%T,325%G,325%C,325%T,326%G,326%T,326%G,326%A,326%G,326-,326+C,327%A,327+C,328%T,328%T,328%T,328%G,328%G,329%G,329%C,329%C,329-,330%C,330%T,330%C,331%G,331%G,331%G,331%C,331%T,332%C,332%A,332%C,332%G,332%G,332%G,332-,333%A,333%A,333%G,333%G,333%G,334%A,334-,335%T,335%G,335-,335-,335+G,336%T,336%C,336%T,336%A,336%T,336%A,336-,337%G,337%A,337%A,338%T,338%G,338%T,338%G,338%A,339%G,339%C,339%G,3440%G,340%G,340%A,341%T,341%A,341%T,341%C,342%G,342%T,342%G,342%T,342%G,342%G,342+C,343%A,343%T,343%T,343%A,343%T,343+A,344%T,344%A,344%C,344%A,344-,344-,345%T,345+G,345+T,346%A,346%C,346%T,346+T,347%G,347%C,347%A,347%A,347%G,347%A,347%C,347%G,347-,347-,347-,348%C,348%A,348+C,349%T,349%T,349%T,349%T,349%G,349-,349+G,350%A,350%T,350%A,350%A,350%T,350%C,350%C,350%T,350%T,350+T,351%G,351%C,351%A,351%A,352%T,352%A,352%C,352%A,352%T,352%A,352%C,352-,352+C,352+T,353%G,353%G,353%C,353%G,353%T,353%T,353%C,353%G,353%C,353%G,354%C,354%G,354%G,354%A,354%A,354%A,354%G,355%T,355%T,355%C,355-,355+T,356%C,356%T,356%G,356%G,357%G,357%C,357%G,357%G,357%G,357%T,357-,357+T,358%T,359%A,359%T,359%C,359%C,359%T,359%A,359%T,359%C,359+A,360%T,360%T,360%T,360%T,360%A,360-,360+A,361%T,361%G,361%T,361+C,362%A,362%T,362%T,362+T,362+C,363%A,363%A,363%C,363%C,363%G,363%G,364%T,364%G,364%C,364%T,364%C,364+G,364+G,365%T,365%T,365%T,365%T,365-,365-,366%T,366%T,366%A,366%A,366%A,366%A,366%C,366%C,367%T,367%C,367%A,367%C,367%A,367%C,367+T,368%A,368%G,368%A,368%G,368%A,368%C,368+C,369%C,369%C,369%G,369+T,370%T,370%A,370%A,370%C,370%T,370-,371%C,371%G,372%C,372%T,372%G,372%C,372%C,372-,373%G,373%G,373%G,373%G,373%T,373%C,373%C,373%G,373-,373-,374%C,374%C,374%T,374%C,374%G,374-,375%C,375%C,375%C,375%A,375%T,375%A,375%C,375%A,375%A,376%A,376%A,376%G,376%A,376%G,376%T,376-,376-,376+C,376+T,376+A,377%G,377%C,377%C,378%G,378%T,378%T,378%G,378%T,378%A,378%G,378%T,378+T,379%A,379%G,379%A,379+C,379+C,379+G,380%G,380%G,380%C,380%A,380%C,380%C,380%G,381%A,381%G,381%A,381%C,381%C,381+G,381+T,381+C,382%A,382%A,382%G,382%A,382%T,382%A,382%T,382%A,382%T,382-,382-,383%T,383%G,383%T,383%T,383%T,383+G,384%A,384%G,384%G,384%T,384%G,384-,384-,385%G,385%A,385%T,385%G,385%A,385%T,385%G,385%T,386%A,386%C,386%A,386%A,386-,387%C,387%T,387%A,387%T,387%T,387-,387-,387-,388%C,388%G,388%G,388%A,388%A,388%G,388-,388-,388+A,388+T,389%A,389%T,389%C,389%A,389%A,389%C,389%C,389%A,389%A,389-,389+A,390%G,390%C,390%G,390%G,390%C,390%C,390%G,390%C,390%G,390%C,390%G,390+C,391%G,391%C,391%C,391%C,391%T,391%C,391%C,391%G,391-,391+T,392%C,392%C,392%A,392%A,392%A,392%C,392%A,392%A,392%C,392%A,392%T,393%G,393%G,393%T,393%C,393%C,393%G,393%C,393%T,393%T,393-,393+T,394%C,394%A,394%G,394%A,394%A,394%G,394+T,395%G,395%T,395%G,395%C,395%G,395%C,395%G,395%C,395%T,395%G,396%T,396%T,396%T,396%G,396%G,396%G,396%T,396%C,396%G,396+G,397%C,397%A,397%G,397%C,397%G,397%A,397%G,397+G,397+T,398%T,398%T,398%T,398%A,398%C,398%A,398%C,398%T,398%T,398%C,398%A,398-,398-,398+A,398+G,399%T,399%C,399%T,399%C,399%G,399-,399-,399+T,400%T,400%G,400%A,400%A,400%A,400%A,400-,400-,400+C**"...
Thanks for the reply.
Hi Mao, That's an interesting idea, but it is not supported by Grinder. Best, Florent On Wed, Jun 20, 2018, 20:29 Maoxuan Lin mlin18@users.sourceforge.net wrote: Hi Ginder, I am using Grinder to simulate paired-end reads using a set of reference sequences. My goal is to guarantee every reference sequence has been selected to simulate reads. When I increased the total number of reads to large enough, I achieved this goal. However, I could not find a general rule or specific parameters to achieve this;...
Hi Grinder, I am using Grinder to simulate paired-end reads using a set of reference sequences. My goal is to guarantee every reference sequence has been selected to simulate reads. When I increased the total number of reads to large enough, I achieved this goal. However, I could not find a general rule or specific parameters to achieve this; for example, how can I generate exact one read from every reference sequence or a certain number of reads per reference sequence(like 4 reads per reference...
Hi Grinder, I am using Grinder to simulate paired-end reads using a set of reference sequences. My goal is to guarantee every reference sequence has been selected to simulate reads. When I increased the total number of reads to large enough, I achieved this goal. However, I could not find a general rule or specific parameters to achieve this; for example, how can I generate exact one read from every reference sequence or a certain number of reads per reference sequence(like 4 reads per reference...
Hi Ginder, I am using Grinder to simulate paired-end reads using a set of reference sequences. My goal is to guarantee every reference sequence has been selected to simulate reads. When I increased the total number of reads to large enough, I achieved this goal. However, I could not find a general rule or specific parameters to achieve this; for example, how can I generate exact one read from every reference sequence or a certain number of reads per reference sequence(like 4 reads per reference sequence)?...
installation help needed
Abundance file bug
Hi, The sofware is correct. It does not find reference sequence AE000666 because it is not amplified by the primers you provided. You need to not request this sequence or modified your primers so that they amplify it. Best, Florent
Sorry, I didn's save the abundance and reference files in my last message. The abundance file contains the following lines: AE000666 50.0 AE003849 50.0
How to generate Illumina amplicon reads with pairwise overlap?
Abundance file bug
Use the -id <insert_dist> option. From the manpage: "The insert is defined in the...
How to generate Illumina amplicon reads with pairwise overlap?
Small internal cleanup
Improved interface for the poly4 error model, i...
Ok, good, closing.
06-seed.t failing test
Please close this ticket. ;)
Value of "-num_libraries" is ignored
Hi Florent, you are right, the fitdistrplus R library was not installed. I had some...
I see, so I was putting it in the wrong format. I copy/pasted the text from the examples...
Ok, now I discovered something else... Before writing this report, I created a new...
Hello Florent, I just realized that at the moment of generating this report my copy...
Bug in read generation with paired-end and coverage.
Hi there! Thanks a lot, I did not think about this potential issue before. This is...
Silenced an expected warning during testing
Grinder version 0.5.4
Using Test::Warn to test and silence warnings
Test update
Fix for the last mate pair sometimes missing th...
Moved exec from 'script/' to conventional 'bin/...
"Expecting it's just an option I did not notice." Expecting it's NOT just an option...
Bug in read generation with paired-end and coverage.
Seems to work fine on my side with perl 5.20.2 Could you try to individually upgrade...
Error when generating chimeras
read_dist parsing problem
Hi Francisco, I have added documentation to clarify what the intended usage is when...
More dev doc updates
Fix for Perl 5.18's hash_randomization (reporte...
Updated test on forbidden chars
Added some docs about the dev version
Errors and warnings in linux Ubuntu
Hi Francisco, Regarding the Statistics::R, R, distrplus warning, I suspect that you...
I want to add that this problem is not exclusive of 'read_dist', I just realized...
read_dist parsing problem
Errors and warnings in linux Ubuntu
06-seed.t failing test
Thank you very much for your help. Best regards, Noemi
Hi Noemi, You need to set the parameter -forward_reverse to produce amplicon datasets...
Hello! I am using Grinder and I have a problem with primers, I would like use the...
Hi Piotr, The problem is that using kmer-based chimeras requires reference sequences...
Error when generating chimeras
POD update regarding dependencies
More concise test messages
Trivial code reduction
Consistent indentation
Database test improvements (patch by Francisco ...
Revised dependencies... No need to bundle Biope...
Sequencing error tests more deterministic (patc...
Fix hash randomization in K-mer tests
Deterministic tests of community structure (rep...