artic-network / artic-ncov2019

ARTIC nanopore protocol for nCoV2019 novel coronavirus
Creative Commons Attribution 4.0 International
168 stars 166 forks source link

adding custom primer scheme #78

Open arz19893 opened 2 years ago

arz19893 commented 2 years ago

Hi ! I want to add a custom primers scheme using pipeline, keep getting an error when I add directory for our primer scheme

Is there a way to add the scheme manually or a way to upload the primer schemes to the pipeline

2

Thanks

bwlang commented 2 years ago

It is possible to specify your own primer scheme using a command line like this:

artic minion --strict  --threads 8 --read-file reads.fastq --scheme-directory schemes --scheme-version 1a NEB_VarSkip NB88 --skip-nanopolish --medaka --medaka-model r941_min_fast_g303

which expects a directory structure like this for --scheme-directory

schemes/NEB_VarSkip/V1a
schemes/NEB_VarSkip/V1a/NEB_VarSkip.scheme.bed
schemes/NEB_VarSkip/V1a/NEB_VarSkip.reference.fasta
schemes/NEB_VarSkip/V1a/NEB_VarSkip.reference.fasta.fai

note that you need to specify 1a to refer to the V1a directory and that the scheme name (e.g. NEB_VarSkip) must match the directory name and the scheme and reference prefixes.

rebeelouise commented 2 years ago

Hi @bwlang - I tried this to try and get the midnight primer scheme to work but to no avail... midnight primers are in the same directory as V3 and V4 and are named V1200, with the prefixes nCoV-2019...!

artic minion --medaka --medaka-model r941_min_high_g360 --normalise 200 --threads 60 --scheme-directory /home/rebee/tools/artic-ncov2019/primer_schemes/ --scheme-version nCoV-2019/V1200 --read-file midnight-p5_barcode84_filtered.fastq --strict nCoV-2019/V1200 sample

bwlang commented 2 years ago

Hi @rebeelouise I'm just a user of this software and have not tried it on Midnight schemes - it would be great if the maintainers of these tools could incorporate new primer schemes smooth their use. I couple of ideas:

I'm not sure since I don't have anything to test this on - but, in the absence of more informed guidance , I hope this can help you:

artic minion --strict --skip-nanopolish --medaka --medaka-model r941_min_high_g360 --normalise 200 --threads 60 --scheme-directory /home/rebee/tools/artic-ncov2019/primer_schemes/ --scheme-version V1200  nCoV-2019 --read-file midnight-p5_barcode84_filtered.fastq  sample
rebeelouise commented 2 years ago

Hi @bwlang - thanks for your response :) I managed to get it to find the scheme then it threw an error...!

 artic minion --medaka --medaka-model r941_min_high_g360 --normalise 200 --threads 60 --scheme-directory /home/rebee/tools/interartic_bin/primer-schemes/midnight --read-file midnight-p5_barcode84_filtered.fastq --strict nCoV-2019/V1 test
Running:  artic-tools validate_scheme /home/rebee/tools/interartic_bin/primer-schemes/midnight/nCoV-2019/V1/nCoV-2019.scheme.bed
[09:26:25] [artic-tools::validate_scheme] starting primer scheme validator
[09:26:25] [artic-tools::validate_scheme] reading scheme
skipping row 1 in scheme - invalid primer start/end for primerID: SARSCoV2120_1_RIGHT
skipping row 3 in scheme - invalid primer start/end for primerID: SARSCoV2120_2_RIGHT
skipping row 5 in scheme - invalid primer start/end for primerID: SARSCoV2120_3_RIGHT
skipping row 7 in scheme - invalid primer start/end for primerID: SARSCoV2120_4_RIGHT
skipping row 9 in scheme - invalid primer start/end for primerID: SARSCoV2120_5_RIGHT
skipping row 11 in scheme - invalid primer start/end for primerID: SARSCoV2120_6_RIGHT
skipping row 13 in scheme - invalid primer start/end for primerID: SARSCoV2120_7_RIGHT
skipping row 17 in scheme - invalid primer start/end for primerID: SARSCoV2120_9_RIGHT
skipping row 19 in scheme - invalid primer start/end for primerID: SARSCoV2120_10_RIGHT
skipping row 21 in scheme - invalid primer start/end for primerID: SARSCoV2120_11_RIGHT
skipping row 23 in scheme - invalid primer start/end for primerID: SARSCoV2120_12_RIGHT
skipping row 25 in scheme - invalid primer start/end for primerID: SARSCoV2120_13_RIGHT
skipping row 27 in scheme - invalid primer start/end for primerID: SARSCoV2120_14_RIGHT
skipping row 29 in scheme - invalid primer start/end for primerID: SARSCoV2120_15_RIGHT
skipping row 31 in scheme - invalid primer start/end for primerID: SARSCoV2120_16_RIGHT
skipping row 33 in scheme - invalid primer start/end for primerID: SARSCoV2120_17_RIGHT
skipping row 35 in scheme - invalid primer start/end for primerID: SARSCoV2120_18_RIGHT
skipping row 37 in scheme - invalid primer start/end for primerID: SARSCoV2120_19_RIGHT
skipping row 39 in scheme - invalid primer start/end for primerID: SARSCoV2120_20_RIGHT
skipping row 41 in scheme - invalid primer start/end for primerID: SARSCoV2120_21_RIGHT
skipping row 43 in scheme - invalid primer start/end for primerID: SARSCoV2120_22_RIGHT
skipping row 45 in scheme - invalid primer start/end for primerID: SARSCoV2120_23_RIGHT
skipping row 47 in scheme - invalid primer start/end for primerID: SARSCoV2120_24_RIGHT
skipping row 49 in scheme - invalid primer start/end for primerID: SARSCoV2120_25_RIGHT
skipping row 51 in scheme - invalid primer start/end for primerID: SARSCoV2120_26_RIGHT
skipping row 53 in scheme - invalid primer start/end for primerID: SARSCoV2120_27_RIGHT
skipping row 55 in scheme - invalid primer start/end for primerID: SARSCoV2120_28_RIGHT
skipping row 57 in scheme - invalid primer start/end for primerID: SARSCoV2120_29_RIGHT
error--> primer count does not equal the number of rows in the input file - 29 vs 58
primer scheme failed strict checking`

Taking off the --strict parameter overcame the error and produced a wonderful consensus sequence showing what I expected!

:D