Как выполнить внешнюю программу с помощью Perl (системы) с аргументами, включающими метасимвол " - PullRequest
2 голосов
/ 10 октября 2019

Я пытаюсь выполнить внешнюю программу из кода perl, а именно cutadapt (https://cutadapt.readthedocs.io/en/stable/guide.html).

Но я получаю сообщение об ошибке от cutadapt, как только добавляю; требуется, что я хочу иметь.

Все напечатанные команды работают нормально в терминале.

Мой код perl выглядит следующим образом:

#string without ;
my $cutadapt_cmd1 = '/home/USER/miniconda3/bin/cutadapt -a "GAGGAAGTAAAAGTCRTAACAAGGT...ATCGATGAAGAACGCAGCGAA" --discard-untrimmed -q 20 -m 200 -o SAMPLE_NAME_401.IonXpress_0401.trim.fq IonXpress_0401_rawlib.basecaller.fq';
#string with ;
my $cutadapt_cmd2 = '/home/USER/miniconda3/bin/cutadapt -a "GAGGAAGTAAAAGTCRTAACAAGGT;required...ATCGATGAAGAACGCAGCGAA" --discard-untrimmed -q 20 -m 200 -o SAMPLE_NAME_401.IonXpress_0401.trim.fq IonXpress_0401_rawlib.basecaller.fq';
#array without ;
my @cutadapt_cmd3 = ('/home/USER/miniconda3/bin/cutadapt', '-a', 'GAGGAAGTAAAAGTCRTAACAAGGT...ATCGATGAAGAACGCAGCGAA', '--discard-untrimmed' ,'-q' ,'20', '-m', '200', '-o' ,'SAMPLE_NAME_401.IonXpress_0401.trim.fq', 'IonXpress_0401_rawlib.basecaller.fq');
#array with ;
my @cutadapt_cmd4 = ('/home/USER/miniconda3/bin/cutadapt', '-a', 'GAGGAAGTAAAAGTCRTAACAAGGT;required...ATCGATGAAGAACGCAGCGAA', '--discard-untrimmed' ,'-q' ,'20', '-m', '200', '-o' ,'SAMPLE_NAME_401.IonXpress_0401.trim.fq', 'IonXpress_0401_rawlib.basecaller.fq');
#array with ; and with integers
my @cutadapt_cmd5 = ('/home/USER/miniconda3/bin/cutadapt', '-a', 'GAGGAAGTAAAAGTCRTAACAAGGT;required...ATCGATGAAGAACGCAGCGAA', '--discard-untrimmed' ,'-q' ,20, '-m', 200, '-o' ,'SAMPLE_NAME_401.IonXpress_0401.trim.fq', 'IonXpress_0401_rawlib.basecaller.fq');
#Works
print("\n\ncmd1\n\n");
system $cutadapt_cmd1;
#Fails
print("\n\ncmd2\n\n");
system $cutadapt_cmd2;
#Works
print("\n\ncmd3\n\n");
system @cutadapt_cmd3;
#Fails
print("\n\ncmd4\n\n");
system @cutadapt_cmd4;
#Fails
print("\n\ncmd5\n\n");
system @cutadapt_cmd5;

И вывод выглядит так:

cmd1

This is cutadapt 1.18 with Python 3.7.1
Command line parameters: -a GAGGAAGTAAAAGTCRTAACAAGGT...ATCGATGAAGAACGCAGCGAA --discard-untrimmed -q 20 -m 200 -o SAMPLE_NAME_401.IonXpress_0401.trim.fq IonXpress_0401_rawlib.basecaller.fq
Processing reads on 1 core in single-end mode ...
Finished in 0.47 s (11 us/read; 5.67 M reads/minute).

=== Summary ===

Total reads processed:                  44,086
Reads with adapters:                         0 (0.0%)
Reads that were too short:               7,268 (16.5%)
Reads written (passing filters):             0 (0.0%)

Total basepairs processed:    11,458,046 bp
Quality-trimmed:                 371,723 bp (3.2%)
Total written (filtered):              0 bp (0.0%)

=== Adapter 2 ===

Sequence: GAGGAAGTAAAAGTCRTAACAAGGT...ATCGATGAAGAACGCAGCGAA; Type: linked; Length: 25+21; 5' trimmed: 0 times; 3' trimmed: 0 times



cmd2

Traceback (most recent call last):
  File "/home/USER/miniconda3/bin/cutadapt", line 12, in <module>
    sys.exit(main())
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/__main__.py", line 741, in main
    pipeline = pipeline_from_parsed_args(options, paired, pair_filter_mode, quality_filename, is_interleaved_output)
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/__main__.py", line 614, in pipeline_from_parsed_args
    adapters = adapter_parser.parse_multi(options.adapters, options.anywhere, options.front)
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/adapters.py", line 335, in parse_multi
    adapters.extend(self.parse(spec, cmdline_type))
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/adapters.py", line 322, in parse
    yield self._parse(spec, cmdline_type, name=None)
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/adapters.py", line 237, in _parse
    name1, front1, sequence1, back1, parameters1 = self._parse_not_linked(spec1, 'front')
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/adapters.py", line 170, in _parse_not_linked
    parameters = AdapterParser._parse_parameters(parameters_spec)
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/adapters.py", line 132, in _parse_parameters
    raise KeyError('Unknown parameter {}'.format(key))
KeyError: 'Unknown parameter required'


cmd3

This is cutadapt 1.18 with Python 3.7.1
Command line parameters: -a GAGGAAGTAAAAGTCRTAACAAGGT...ATCGATGAAGAACGCAGCGAA --discard-untrimmed -q 20 -m 200 -o SAMPLE_NAME_401.IonXpress_0401.trim.fq IonXpress_0401_rawlib.basecaller.fq
Processing reads on 1 core in single-end mode ...
Finished in 0.50 s (11 us/read; 5.27 M reads/minute).

=== Summary ===

Total reads processed:                  44,086
Reads with adapters:                         0 (0.0%)
Reads that were too short:               7,268 (16.5%)
Reads written (passing filters):             0 (0.0%)

Total basepairs processed:    11,458,046 bp
Quality-trimmed:                 371,723 bp (3.2%)
Total written (filtered):              0 bp (0.0%)

=== Adapter 2 ===

Sequence: GAGGAAGTAAAAGTCRTAACAAGGT...ATCGATGAAGAACGCAGCGAA; Type: linked; Length: 25+21; 5' trimmed: 0 times; 3' trimmed: 0 times



cmd4

Traceback (most recent call last):
  File "/home/USER/miniconda3/bin/cutadapt", line 12, in <module>
    sys.exit(main())
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/__main__.py", line 741, in main
    pipeline = pipeline_from_parsed_args(options, paired, pair_filter_mode, quality_filename, is_interleaved_output)
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/__main__.py", line 614, in pipeline_from_parsed_args
    adapters = adapter_parser.parse_multi(options.adapters, options.anywhere, options.front)
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/adapters.py", line 335, in parse_multi
    adapters.extend(self.parse(spec, cmdline_type))
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/adapters.py", line 322, in parse
    yield self._parse(spec, cmdline_type, name=None)
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/adapters.py", line 237, in _parse
    name1, front1, sequence1, back1, parameters1 = self._parse_not_linked(spec1, 'front')
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/adapters.py", line 170, in _parse_not_linked
    parameters = AdapterParser._parse_parameters(parameters_spec)
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/adapters.py", line 132, in _parse_parameters
    raise KeyError('Unknown parameter {}'.format(key))
KeyError: 'Unknown parameter required'


cmd5

Traceback (most recent call last):
  File "/home/USER/miniconda3/bin/cutadapt", line 12, in <module>
    sys.exit(main())
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/__main__.py", line 741, in main
    pipeline = pipeline_from_parsed_args(options, paired, pair_filter_mode, quality_filename, is_interleaved_output)
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/__main__.py", line 614, in pipeline_from_parsed_args
    adapters = adapter_parser.parse_multi(options.adapters, options.anywhere, options.front)
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/adapters.py", line 335, in parse_multi
    adapters.extend(self.parse(spec, cmdline_type))
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/adapters.py", line 322, in parse
    yield self._parse(spec, cmdline_type, name=None)
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/adapters.py", line 237, in _parse
    name1, front1, sequence1, back1, parameters1 = self._parse_not_linked(spec1, 'front')
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/adapters.py", line 170, in _parse_not_linked
    parameters = AdapterParser._parse_parameters(parameters_spec)
  File "/home/USER/miniconda3/lib/python3.7/site-packages/cutadapt/adapters.py", line 132, in _parse_parameters
    raise KeyError('Unknown parameter {}'.format(key))
KeyError: 'Unknown parameter required'

В зависимости от того, как я хочу обрабатывать свои данные, мне действительно нужно сказать cutadapt, что требуются адаптеры.

Ответы [ 2 ]

1 голос
/ 11 октября 2019

Ниже приведена команда оболочки bourne, которую вы пытаетесь выполнить:

cutadapt -a "ATGC;required...TGCA;required" in_file 

Чтобы выполнить это, вам нужно передать команду в оболочку bourne.

system('sh', '-c', 'cutadapt -a "ATGC;required...TGCA;required" in_file')

Этотакже можно записать следующим образом:

system('cutadapt -a "ATGC;required...TGCA;required" in_file')

Приведенная выше команда вызовет оболочку и выполнит ее cutadapt со следующими аргументами:

  • cutadapt
  • -a
  • ATGC;required...TGCA;required
  • in_file

(обратите внимание на отсутствие кавычек.)

Вы можете сделатьто же самое непосредственно из Perl:

system('cutadapt', '-a', 'ATGC;required...TGCA;required', 'in_file')

Это лучше, потому что в нем нет необходимости использовать оболочку.

1 голос
/ 10 октября 2019

Я не смог воспроизвести вашу проблему с последней версией cutadapt (cutadapt 2.5 с Python 3.7.3), установленной с использованием conda (пакет cutadapt-2.5 из канала bioconda). Все 5 команд выполнены успешно, что дает ожидаемый результат (1 или 2 чтения обрезаются, либо 1 или 2 чтения записываются в выходных данных). Я использовал bash и zsh shell и perl v5.18.2 без проблем. Согласно вашему выводу, вы используете более старую версию cutadapt (cutadapt 1.18 с Python 3.7.1.).

Попробуйте установить последнюю версию cutadapt , используя conda, см. Инструкции ниже. Это наиболее вероятная причина вашей проблемы.

Установка cutadapt с использованием conda (при условии, что conda уже установлена ​​и bioconda включена в каналы):

conda update conda

conda search cutadapt

conda create --name cutadapt cutadapt

# Enable conda cutadapt environment:
source activate cutadapt

# ... run cutadapt ...

# At the end, exit the conda cutadapt environment:
source deactivate

Запуск cutadapt из Perl-скрипта:

cat > IonXpress_0401_rawlib.basecaller.fq <<EOF
@HWI-EAS209_0006_FC706VJ:5:58:5894:21141#ATCACG/1
GAGGAAGTAAAAGTCATAACAAGGTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTATCGATGAAGAACGCAGCGAA
+
EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
@HWI-EAS209_0006_FC706VJ:5:58:5895:21142#ATCACG/1
CCCCCCCCCCCCCCCCCCCCCCCCTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTATCGATGAAGAACGCAGCGAA
+
EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
EOF

Отредактируйте скрипт, показанный в вашем вопросе:

  • Удалите жестко закодированный путь cutadapt (не требуется)используя conda env).

  • Измените -m 200 на -m 2, чтобы увидеть различия в обрезке для очень коротких примеров чтения.

  • Печатьв STDOUT содержимое выходного (усеченного) файла.

    . / cutadapt.pl &> cutadapt.log

. / cutadapt.pl:

#!/usr/bin/env perl

# string without ;
my $cutadapt_cmd1 = 'cutadapt -a "GAGGAAGTAAAAGTCRTAACAAGGT...ATCGATGAAGAACGCAGCGAA" --discard-untrimmed -q 20 -m 2 -o SAMPLE_NAME_401.IonXpress_0401.trim.fq IonXpress_0401_rawlib.basecaller.fq';

# string with ;
my $cutadapt_cmd2 = 'cutadapt -a "GAGGAAGTAAAAGTCRTAACAAGGT;required...ATCGATGAAGAACGCAGCGAA" --discard-untrimmed -q 20 -m 2 -o SAMPLE_NAME_401.IonXpress_0401.trim.fq IonXpress_0401_rawlib.basecaller.fq';

# array without ;
my @cutadapt_cmd3 = ('cutadapt', '-a', 'GAGGAAGTAAAAGTCRTAACAAGGT...ATCGATGAAGAACGCAGCGAA', '--discard-untrimmed' ,'-q' ,'20', '-m', '2', '-o' ,'SAMPLE_NAME_401.IonXpress_0401.trim.fq', 'IonXpress_0401_rawlib.basecaller.fq');

# array with ;
my @cutadapt_cmd4 = ('cutadapt', '-a', 'GAGGAAGTAAAAGTCRTAACAAGGT;required...ATCGATGAAGAACGCAGCGAA', '--discard-untrimmed' ,'-q' ,'20', '-m', '2', '-o' ,'SAMPLE_NAME_401.IonXpress_0401.trim.fq', 'IonXpress_0401_rawlib.basecaller.fq');

# array with ; and with integers
my @cutadapt_cmd5 = ('cutadapt', '-a', 'GAGGAAGTAAAAGTCRTAACAAGGT;required...ATCGATGAAGAACGCAGCGAA', '--discard-untrimmed' ,'-q' ,20, '-m', 2, '-o' ,'SAMPLE_NAME_401.IonXpress_0401.trim.fq', 'IonXpress_0401_rawlib.basecaller.fq');

# Works
print("\n\ncmd1\n\n");
system $cutadapt_cmd1;
system "cat SAMPLE_NAME_401.IonXpress_0401.trim.fq";

# Fails
print("\n\ncmd2\n\n");
system $cutadapt_cmd2;
system "cat SAMPLE_NAME_401.IonXpress_0401.trim.fq";

# Works
print("\n\ncmd3\n\n");
system @cutadapt_cmd3;
system "cat SAMPLE_NAME_401.IonXpress_0401.trim.fq";

# Fails
print("\n\ncmd4\n\n");
system @cutadapt_cmd4;
system "cat SAMPLE_NAME_401.IonXpress_0401.trim.fq";

# Fails
print("\n\ncmd5\n\n");
system @cutadapt_cmd5;
system "cat SAMPLE_NAME_401.IonXpress_0401.trim.fq";

cutadapt.log:



cmd1

This is cutadapt 2.5 with Python 3.7.3
Command line parameters: -a GAGGAAGTAAAAGTCRTAACAAGGT...ATCGATGAAGAACGCAGCGAA --discard-untrimmed -q 20 -m 2 -o SAMPLE_NAME_401.IonXpress_0401.trim.fq IonXpress_0401_rawlib.basecaller.fq
WARNING: You specified a linked adapter as '-a ADAPTER1...ADAPTER2'. The
interpretation of what this means has changed in Cutadapt 2.0. (The 5'
adapter is now no longer anchored by default.) To get results consist
with the old behavior, you need to anchor the 5' adapter explicitly as
in '-a ^ADAPTER1...ADAPTER2'.
Processing reads on 1 core in single-end mode ...
Finished in 0.00 s (1803 us/read; 0.03 M reads/minute).

=== Summary ===

Total reads processed:                       2
Reads with adapters:                         2 (100.0%)
Reads that were too short:                   0 (0.0%)
Reads written (passing filters):             2 (100.0%)

Total basepairs processed:           152 bp
Quality-trimmed:                       0 bp (0.0%)
Total written (filtered):             85 bp (55.9%)

=== Adapter 1 ===

Sequence: GAGGAAGTAAAAGTCRTAACAAGGT...ATCGATGAAGAACGCAGCGAA; Type: linked; Length: 25+21; 5' trimmed: 1 times; 3' trimmed: 2 times

No. of allowed errors:
0-9 bp: 0; 10-19 bp: 1; 20-25 bp: 2

No. of allowed errors:
0-9 bp: 0; 10-19 bp: 1; 20-21 bp: 2

Overview of removed sequences at 5' end
length  count   expect  max.err error counts
25  1   0.0 2   1



Overview of removed sequences at 3' end
length  count   expect  max.err error counts
21  2   0.0 2   2
@HWI-EAS209_0006_FC706VJ:5:58:5894:21141#ATCACG/1
TTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
+
EEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
@HWI-EAS209_0006_FC706VJ:5:58:5895:21142#ATCACG/1
CCCCCCCCCCCCCCCCCCCCCCCCTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
+
EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE


cmd2

This is cutadapt 2.5 with Python 3.7.3
Command line parameters: -a GAGGAAGTAAAAGTCRTAACAAGGT;required...ATCGATGAAGAACGCAGCGAA --discard-untrimmed -q 20 -m 2 -o SAMPLE_NAME_401.IonXpress_0401.trim.fq IonXpress_0401_rawlib.basecaller.fq
WARNING: You specified a linked adapter as '-a ADAPTER1...ADAPTER2'. The
interpretation of what this means has changed in Cutadapt 2.0. (The 5'
adapter is now no longer anchored by default.) To get results consist
with the old behavior, you need to anchor the 5' adapter explicitly as
in '-a ^ADAPTER1...ADAPTER2'.
Processing reads on 1 core in single-end mode ...
Finished in 0.00 s (1747 us/read; 0.03 M reads/minute).

=== Summary ===

Total reads processed:                       2
Reads with adapters:                         1 (50.0%)
Reads that were too short:                   0 (0.0%)
Reads written (passing filters):             1 (50.0%)

Total basepairs processed:           152 bp
Quality-trimmed:                       0 bp (0.0%)
Total written (filtered):             30 bp (19.7%)

=== Adapter 1 ===

Sequence: GAGGAAGTAAAAGTCRTAACAAGGT...ATCGATGAAGAACGCAGCGAA; Type: linked; Length: 25+21; 5' trimmed: 1 times; 3' trimmed: 1 times

No. of allowed errors:
0-9 bp: 0; 10-19 bp: 1; 20-25 bp: 2

No. of allowed errors:
0-9 bp: 0; 10-19 bp: 1; 20-21 bp: 2

Overview of removed sequences at 5' end
length  count   expect  max.err error counts
25  1   0.0 2   1



Overview of removed sequences at 3' end
length  count   expect  max.err error counts
21  1   0.0 2   1
@HWI-EAS209_0006_FC706VJ:5:58:5894:21141#ATCACG/1
TTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
+
EEEEEEEEEEEEEEEEEEEEEEEEEEEEEE


cmd3

This is cutadapt 2.5 with Python 3.7.3
Command line parameters: -a GAGGAAGTAAAAGTCRTAACAAGGT...ATCGATGAAGAACGCAGCGAA --discard-untrimmed -q 20 -m 2 -o SAMPLE_NAME_401.IonXpress_0401.trim.fq IonXpress_0401_rawlib.basecaller.fq
WARNING: You specified a linked adapter as '-a ADAPTER1...ADAPTER2'. The
interpretation of what this means has changed in Cutadapt 2.0. (The 5'
adapter is now no longer anchored by default.) To get results consist
with the old behavior, you need to anchor the 5' adapter explicitly as
in '-a ^ADAPTER1...ADAPTER2'.
Processing reads on 1 core in single-end mode ...
Finished in 0.00 s (1845 us/read; 0.03 M reads/minute).

=== Summary ===

Total reads processed:                       2
Reads with adapters:                         2 (100.0%)
Reads that were too short:                   0 (0.0%)
Reads written (passing filters):             2 (100.0%)

Total basepairs processed:           152 bp
Quality-trimmed:                       0 bp (0.0%)
Total written (filtered):             85 bp (55.9%)

=== Adapter 1 ===

Sequence: GAGGAAGTAAAAGTCRTAACAAGGT...ATCGATGAAGAACGCAGCGAA; Type: linked; Length: 25+21; 5' trimmed: 1 times; 3' trimmed: 2 times

No. of allowed errors:
0-9 bp: 0; 10-19 bp: 1; 20-25 bp: 2

No. of allowed errors:
0-9 bp: 0; 10-19 bp: 1; 20-21 bp: 2

Overview of removed sequences at 5' end
length  count   expect  max.err error counts
25  1   0.0 2   1



Overview of removed sequences at 3' end
length  count   expect  max.err error counts
21  2   0.0 2   2
@HWI-EAS209_0006_FC706VJ:5:58:5894:21141#ATCACG/1
TTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
+
EEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
@HWI-EAS209_0006_FC706VJ:5:58:5895:21142#ATCACG/1
CCCCCCCCCCCCCCCCCCCCCCCCTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
+
EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE


cmd4

This is cutadapt 2.5 with Python 3.7.3
Command line parameters: -a GAGGAAGTAAAAGTCRTAACAAGGT;required...ATCGATGAAGAACGCAGCGAA --discard-untrimmed -q 20 -m 2 -o SAMPLE_NAME_401.IonXpress_0401.trim.fq IonXpress_0401_rawlib.basecaller.fq
WARNING: You specified a linked adapter as '-a ADAPTER1...ADAPTER2'. The
interpretation of what this means has changed in Cutadapt 2.0. (The 5'
adapter is now no longer anchored by default.) To get results consist
with the old behavior, you need to anchor the 5' adapter explicitly as
in '-a ^ADAPTER1...ADAPTER2'.
Processing reads on 1 core in single-end mode ...
Finished in 0.00 s (1732 us/read; 0.03 M reads/minute).

=== Summary ===

Total reads processed:                       2
Reads with adapters:                         1 (50.0%)
Reads that were too short:                   0 (0.0%)
Reads written (passing filters):             1 (50.0%)

Total basepairs processed:           152 bp
Quality-trimmed:                       0 bp (0.0%)
Total written (filtered):             30 bp (19.7%)

=== Adapter 1 ===

Sequence: GAGGAAGTAAAAGTCRTAACAAGGT...ATCGATGAAGAACGCAGCGAA; Type: linked; Length: 25+21; 5' trimmed: 1 times; 3' trimmed: 1 times

No. of allowed errors:
0-9 bp: 0; 10-19 bp: 1; 20-25 bp: 2

No. of allowed errors:
0-9 bp: 0; 10-19 bp: 1; 20-21 bp: 2

Overview of removed sequences at 5' end
length  count   expect  max.err error counts
25  1   0.0 2   1



Overview of removed sequences at 3' end
length  count   expect  max.err error counts
21  1   0.0 2   1
@HWI-EAS209_0006_FC706VJ:5:58:5894:21141#ATCACG/1
TTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
+
EEEEEEEEEEEEEEEEEEEEEEEEEEEEEE


cmd5

This is cutadapt 2.5 with Python 3.7.3
Command line parameters: -a GAGGAAGTAAAAGTCRTAACAAGGT;required...ATCGATGAAGAACGCAGCGAA --discard-untrimmed -q 20 -m 2 -o SAMPLE_NAME_401.IonXpress_0401.trim.fq IonXpress_0401_rawlib.basecaller.fq
WARNING: You specified a linked adapter as '-a ADAPTER1...ADAPTER2'. The
interpretation of what this means has changed in Cutadapt 2.0. (The 5'
adapter is now no longer anchored by default.) To get results consist
with the old behavior, you need to anchor the 5' adapter explicitly as
in '-a ^ADAPTER1...ADAPTER2'.
Processing reads on 1 core in single-end mode ...
Finished in 0.00 s (1796 us/read; 0.03 M reads/minute).

=== Summary ===

Total reads processed:                       2
Reads with adapters:                         1 (50.0%)
Reads that were too short:                   0 (0.0%)
Reads written (passing filters):             1 (50.0%)

Total basepairs processed:           152 bp
Quality-trimmed:                       0 bp (0.0%)
Total written (filtered):             30 bp (19.7%)

=== Adapter 1 ===

Sequence: GAGGAAGTAAAAGTCRTAACAAGGT...ATCGATGAAGAACGCAGCGAA; Type: linked; Length: 25+21; 5' trimmed: 1 times; 3' trimmed: 1 times

No. of allowed errors:
0-9 bp: 0; 10-19 bp: 1; 20-25 bp: 2

No. of allowed errors:
0-9 bp: 0; 10-19 bp: 1; 20-21 bp: 2

Overview of removed sequences at 5' end
length  count   expect  max.err error counts
25  1   0.0 2   1



Overview of removed sequences at 3' end
length  count   expect  max.err error counts
21  1   0.0 2   1
@HWI-EAS209_0006_FC706VJ:5:58:5894:21141#ATCACG/1
TTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
+
EEEEEEEEEEEEEEEEEEEEEEEEEEEEEE

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...