From f80ae36ed1c29ed6426de3e19b9be8a491e4b3ce Mon Sep 17 00:00:00 2001 From: John Huddleston Date: Fri, 12 Feb 2021 16:27:41 -0800 Subject: [PATCH 01/11] Allow filtering by metadata only Allows users to filter strains using only metadata information and output the strains that pass filters as either a metadata table or a list of names. Additionally, allows users to select only those sequences whose strain names are listed in one or more include files. To enable this functionality, this commit makes the following major changes to the filter interface: - sequence input and output are optional - non-sequence-based filters work without sequence input or index - the include argument accepts multiple inputs whose contents are unioned - a new `--exclude-all` flag excludes all strains by default, allowing only those in the include flags to be added back - new metadata and strain output arguments are supported - the initial complete list of strain names to consider for filtering originates from the metadata instead of the sequences Collectively, these changes allow multiple filter commands to be run in parallel without accessing the original sequence data and then the outputs of these separate commands can be joined by a single final filter command to output the sequences corresponding to all desired strain names. For workflows with large sequence inputs, like ncov, these changes should speed up analyses considerably. --- augur/filter.py | 111 ++++++++++++++++++++++++++++---------- tests/builds/zika.t | 4 +- tests/functional/filter.t | 101 ++++++++++++++++++++++++++++++++++ 3 files changed, 186 insertions(+), 30 deletions(-) diff --git a/augur/filter.py b/augur/filter.py index 39e909cd3..857b8c094 100644 --- a/augur/filter.py +++ b/augur/filter.py @@ -92,7 +92,7 @@ def filter_by_query(sequences, metadata_file, query): return [seq for seq in sequences if seq in filtered_meta_dict] def register_arguments(parser): - parser.add_argument('--sequences', '-s', required=True, help="sequences in fasta or VCF format") + parser.add_argument('--sequences', '-s', help="sequences in FASTA or VCF format") parser.add_argument('--metadata', required=True, metavar="FILE", help="sequence metadata, as CSV or TSV") parser.add_argument('--sequence-index', help="sequence composition report generated by augur index. If not provided, an index will be created on the fly.") parser.add_argument('--min-date', type=numeric_date, help="minimal cutoff for date; may be specified as an Augur-style numeric date (with the year as the integer part) or YYYY-MM-DD") @@ -100,7 +100,8 @@ def register_arguments(parser): parser.add_argument('--min-length', type=int, help="minimal length of the sequences") parser.add_argument('--non-nucleotide', action='store_true', help="exclude sequences that contain illegal characters") parser.add_argument('--exclude', type=str, help="file with list of strains that are to be excluded") - parser.add_argument('--include', type=str, help="file with list of strains that are to be included regardless of priorities or subsampling") + parser.add_argument('--exclude-all', action="store_true", help="exclude all strains by default. Use this with the include arguments to select a specific subset of strains.") + parser.add_argument('--include', type=str, nargs="+", help="file(s) with list of strains that are to be included regardless of priorities or subsampling") parser.add_argument('--priority', type=str, help="file with list of priority scores for sequences (strain\tpriority)") subsample_group = parser.add_mutually_exclusive_group() subsample_group.add_argument('--sequences-per-group', type=int, help="subsample to no more than this number of sequences per category") @@ -117,7 +118,9 @@ def register_arguments(parser): parser.add_argument('--exclude-ambiguous-dates-by', choices=['any', 'day', 'month', 'year'], help='Exclude ambiguous dates by day (e.g., 2020-09-XX), month (e.g., 2020-XX-XX), year (e.g., 200X-10-01), or any date fields. An ambiguous year makes the corresponding month and day ambiguous, too, even if those fields have unambiguous values (e.g., "201X-10-01"). Similarly, an ambiguous month makes the corresponding day ambiguous (e.g., "2010-XX-01").') parser.add_argument('--query', help="Filter samples by attribute. Uses Pandas Dataframe querying, see https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#indexing-query for syntax.") - parser.add_argument('--output', '-o', help="output file", required=True) + parser.add_argument('--output', '--output-sequences', '-o', help="filtered sequences in FASTA format") + parser.add_argument('--output-metadata', help="metadata for strains that passed filters") + parser.add_argument('--output-strains', help="list of strains that passed filters (no header)") parser.set_defaults(probabilistic_sampling=True) @@ -125,10 +128,49 @@ def run(args): ''' filter and subsample a set of sequences into an analysis set ''' + # Validate arguments before attempting any I/O. + # Don't allow sequence output when no sequence input is provided. + if args.output and not args.sequences: + print( + "ERROR: You need to provide sequences to output sequences.", + file=sys.stderr) + return 1 + + # Confirm that at least one output was requested. + if not any((args.output, args.output_metadata, args.output_strains)): + print( + "ERROR: You need to select at least one output.", + file=sys.stderr) + return 1 + + # Don't allow filtering on sequence-based information, if no sequences or + # sequence index is provided. + SEQUENCE_ONLY_FILTERS = [ + args.min_length, + args.non_nucleotide + ] + if not args.sequences and not args.sequence_index and any(SEQUENCE_ONLY_FILTERS): + print( + "ERROR: You need to provide a sequence index or sequences to filter on sequence-specific information.", + file=sys.stderr) + return 1 + + # Load inputs, starting with metadata. + try: + # Metadata are the source of truth for which sequences we want to keep + # in filtered output. + meta_dict, meta_columns = read_metadata(args.metadata) + seq_keep = sorted(meta_dict.keys()) + all_seq = seq_keep.copy() + except ValueError as error: + print("ERROR: Problem reading in {}:".format(args.metadata)) + print(error) + return 1 + #Set flags if VCF is_vcf = False is_compressed = False - if any([args.sequences.lower().endswith(x) for x in ['.vcf', '.vcf.gz']]): + if args.sequences and any([args.sequences.lower().endswith(x) for x in ['.vcf', '.vcf.gz']]): is_vcf = True if args.sequences.lower().endswith('.gz'): is_compressed = True @@ -147,7 +189,8 @@ def run(args): #If VCF, open and get sequence names if is_vcf: seq_keep, all_seq = read_vcf(args.sequences) - else: + # TODO: How to best handle "source of truth" for VCF files vs. metadata? + elif args.sequences or args.sequence_index: # If FASTA, try to load the sequence composition details and strain # names to be filtered. index_is_autogenerated = False @@ -180,21 +223,15 @@ def run(args): # Calculate summary statistics needed for filtering. sequence_index["ACGT"] = sequence_index.loc[:, ["A", "C", "G", "T"]].sum(axis=1) - seq_keep = sequence_index["strain"].values - all_seq = seq_keep.copy() - - try: - meta_dict, meta_columns = read_metadata(args.metadata) - except ValueError as error: - print("ERROR: Problem reading in {}:".format(args.metadata)) - print(error) - return 1 - ##################################### #Filtering steps ##################################### + # Exclude all strains by default. + if args.exclude_all: + seq_keep = [] + # remove sequences without meta data tmp = [ ] for seq_name in seq_keep: @@ -426,15 +463,20 @@ def run(args): # Note that this might re-add previously excluded sequences # Note that we are also not checking for existing meta data here num_included_by_name = 0 - if args.include and os.path.isfile(args.include): - with open(args.include, 'r', encoding='utf-8') as ifile: - to_include = set( - [ - line.strip() - for line in ifile - if line[0]!=comment_char and len(line.strip()) > 0 - ] - ) + if args.include: + # Collect the union of all given strains to include. + to_include = set() + for include_file in args.include: + with open(include_file, 'r', encoding='utf-8') as ifile: + to_include.update( + set( + [ + line.strip() + for line in ifile + if line[0]!=comment_char and len(line.strip()) > 0 + ] + ) + ) for s in to_include: if s not in seq_keep: @@ -476,7 +518,7 @@ def run(args): return 1 write_vcf(args.sequences, args.output, dropped_samps) - else: + elif args.sequences and args.output: # It should not be possible to have ids in the list of sequences to keep # that do not exist in the original input sequences, since we built this # list of ids from the sequence index. Just to be safe though, we find @@ -496,6 +538,19 @@ def run(args): print("ERROR: All samples have been dropped! Check filter rules and metadata file format.", file=sys.stderr) return 1 + if args.output_metadata: + metadata_df = pd.DataFrame([meta_dict[strain] for strain in seq_keep]) + metadata_df.to_csv( + args.output_metadata, + sep="\t", + index=False + ) + + if args.output_strains: + with open(args.output_strains, "w") as oh: + for strain in sorted(seq_keep): + oh.write(f"{strain}\n") + print("\n%i sequences were dropped during filtering" % (len(all_seq) - len(seq_keep),)) if args.exclude: print("\t%i of these were dropped because they were in %s" % (num_excluded_by_name, args.exclude)) @@ -516,12 +571,12 @@ def run(args): seed_txt = ", using seed {}".format(args.subsample_seed) if args.subsample_seed else "" print("\t%i of these were dropped because of subsampling criteria%s" % (num_excluded_subsamp, seed_txt)) - if args.include and os.path.isfile(args.include): - print("\n\t%i sequences were added back because they were in %s" % (num_included_by_name, args.include)) + if args.include: + print("\n\t%i sequences were added back because they were in %s" % (num_included_by_name, " and ".join(args.include))) if args.include_where: print("\t%i sequences were added back because of '%s'" % (num_included_by_metadata, args.include_where)) - print("%i sequences have been written out to %s" % (len(seq_keep), args.output)) + print("%i strains have been passed all filters" % (len(seq_keep),)) def _filename_gz(filename): diff --git a/tests/builds/zika.t b/tests/builds/zika.t index c662cb1a2..5e337732b 100644 --- a/tests/builds/zika.t +++ b/tests/builds/zika.t @@ -43,8 +43,8 @@ Filter sequences by a minimum date and an exclusion list and only keep one seque > --subsample-seed 314159 \ > --no-probabilistic-sampling \ > --min-date 2012 > /dev/null - - $ diff -u "results/filtered.fasta" "$TMP/out/filtered.fasta" + $ grep "^>" "$TMP/out/filtered.fasta" | wc -l + \s*10 (re) Align filtered sequences to a specific reference sequence and fill any gaps. diff --git a/tests/functional/filter.t b/tests/functional/filter.t index 65e6877bb..6e9085c36 100644 --- a/tests/functional/filter.t +++ b/tests/functional/filter.t @@ -63,3 +63,104 @@ Using the default probabilistic subsampling, should work the same as the previou > --subsample-seed 314159 \ > --output "$TMP/filtered.fasta" > /dev/null $ rm -f "$TMP/filtered.fasta" + +Filter using only metadata without sequence input or output and save results as filtered metadata. + + $ ${AUGUR} filter \ + > --sequence-index filter/sequence_index.tsv \ + > --metadata filter/metadata.tsv \ + > --min-date 2012 \ + > --min-length 10500 \ + > --output-metadata "$TMP/filtered_metadata.tsv" > /dev/null + +Output should include the 9 sequences matching the filters and a header line. + + $ wc -l "$TMP/filtered_metadata.tsv" + \s*10 .* (re) + $ rm -f "$TMP/filtered_metadata.tsv" + +Filter using only metadata and save results as a list of filtered strains. + + $ ${AUGUR} filter \ + > --sequence-index filter/sequence_index.tsv \ + > --metadata filter/metadata.tsv \ + > --min-date 2012 \ + > --min-length 10500 \ + > --output-strains "$TMP/filtered_strains.txt" > /dev/null + +Output should include only the 9 sequences matching the filters (without a header line). + + $ wc -l "$TMP/filtered_strains.txt" + \s*9 .* (re) + $ rm -f "$TMP/filtered_strains.txt" + +Filter using only metadata without a sequence index. +This should work because the requested filters don't rely on sequence information. + + $ ${AUGUR} filter \ + > --metadata filter/metadata.tsv \ + > --min-date 2012 \ + > --output-strains "$TMP/filtered_strains.txt" > /dev/null + $ rm -f "$TMP/filtered_strains.txt" + +Try to filter using only metadata without a sequence index. +This should fail because the requested filters rely on sequence information. + + $ ${AUGUR} filter \ + > --metadata filter/metadata.tsv \ + > --min-length 10000 \ + > --output-strains "$TMP/filtered_strains.txt" > /dev/null + ERROR: You need to provide a sequence index or sequences to filter on sequence-specific information. + [1] + +Try to filter with sequence outputs and no sequence inputs. +This should fail. + + $ ${AUGUR} filter \ + > --sequence-index filter/sequence_index.tsv \ + > --metadata filter/metadata.tsv \ + > --min-length 10000 \ + > --output "$TMP/filtered.fasta" > /dev/null + ERROR: You need to provide sequences to output sequences. + [1] + +Try to filter without any outputs. + + $ ${AUGUR} filter \ + > --sequence-index filter/sequence_index.tsv \ + > --metadata filter/metadata.tsv \ + > --min-length 10000 > /dev/null + ERROR: You need to select at least one output. + [1] + +Filter into two separate sets and then select sequences from the union of those sets. +First, select strains from Brazil (there should be 1). + + $ ${AUGUR} filter \ + > --metadata filter/metadata.tsv \ + > --query "country == 'Brazil'" \ + > --output-strains "$TMP/filtered_strains.brazil.txt" > /dev/null + $ wc -l "$TMP/filtered_strains.brazil.txt" + \s*1 .* (re) + +Then, select strains from Colombia (there should be 3). + + $ ${AUGUR} filter \ + > --metadata filter/metadata.tsv \ + > --query "country == 'Colombia'" \ + > --output-strains "$TMP/filtered_strains.colombia.txt" > /dev/null + $ wc -l "$TMP/filtered_strains.colombia.txt" + \s*3 .* (re) + +Finally, exclude all sequences except those from the two sets of strains (there should be 4). + + $ ${AUGUR} filter \ + > --sequences filter/sequences.fasta \ + > --sequence-index filter/sequence_index.tsv \ + > --metadata filter/metadata.tsv \ + > --exclude-all \ + > --include "$TMP/filtered_strains.brazil.txt" "$TMP/filtered_strains.colombia.txt" \ + > --output "$TMP/filtered.fasta" > /dev/null + $ grep "^>" "$TMP/filtered.fasta" | wc -l + \s*4 (re) + $ rm -f "$TMP/filtered.fasta" From 8b71d094ea8f92ae861db389f5d090481bfbe907 Mon Sep 17 00:00:00 2001 From: John Huddleston Date: Sat, 20 Feb 2021 13:09:45 -0800 Subject: [PATCH 02/11] Define utility function to read strains from files Adds a `read_strains` utility function that can read strain names from one or more files and return the distinct set of all names. Updates the filter logic to use this function to read in names of strains to include. --- augur/filter.py | 15 ++------------- augur/utils.py | 25 +++++++++++++++++++++++++ tests/test_utils.py | 16 ++++++++++++++++ 3 files changed, 43 insertions(+), 13 deletions(-) diff --git a/augur/filter.py b/augur/filter.py index 857b8c094..4357359f0 100644 --- a/augur/filter.py +++ b/augur/filter.py @@ -14,7 +14,7 @@ import treetime.utils from .index import index_sequences -from .utils import read_metadata, get_numerical_dates, run_shell_command, shquote, is_date_ambiguous +from .utils import read_metadata, read_strains, get_numerical_dates, run_shell_command, shquote, is_date_ambiguous comment_char = '#' MAX_NUMBER_OF_PROBABILISTIC_SAMPLING_ATTEMPTS = 10 @@ -465,18 +465,7 @@ def run(args): num_included_by_name = 0 if args.include: # Collect the union of all given strains to include. - to_include = set() - for include_file in args.include: - with open(include_file, 'r', encoding='utf-8') as ifile: - to_include.update( - set( - [ - line.strip() - for line in ifile - if line[0]!=comment_char and len(line.strip()) > 0 - ] - ) - ) + to_include = read_strains(*args.include) for s in to_include: if s not in seq_keep: diff --git a/augur/utils.py b/augur/utils.py index 5fb1ed923..62361c9bb 100644 --- a/augur/utils.py +++ b/augur/utils.py @@ -686,3 +686,28 @@ def load_mask_sites(mask_file): "A", "G", "C", "T", "U", "N", "R", "Y", "S", "W", "K", "M", "B", "V", "D", "H", "-", "a", "g", "c", "t", "u", "n", "r", "y", "s", "w", "k", "m", "b", "v", "d", "h", "-" } + + +def read_strains(*files, comment_char="#"): + """Reads strain names from one or more plain text files and returns the + set of distinct strains. + + Parameters + ---------- + files : one or more str + one or more names of text files with one strain name per line + + Returns + ------- + set : + strain names from the given input files + + """ + strains = set() + for input_file in files: + with open(input_file, 'r', encoding='utf-8') as ifile: + for line in ifile: + if line[0] != comment_char and len(line.strip()) > 0: + strains.add(line.strip()) + + return strains diff --git a/tests/test_utils.py b/tests/test_utils.py index 264bcc643..2be92864e 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -1,4 +1,5 @@ import datetime +from pathlib import Path from unittest.mock import patch import pytest @@ -129,3 +130,18 @@ def test_is_date_ambiguous(self): # Test incomplete date strings without ambiguous dates for the requested fields. assert not utils.is_date_ambiguous("2019", "year") assert not utils.is_date_ambiguous("2019-10", "month") + + def test_read_strains(self, tmpdir): + # Write one list of filenames with some unnecessary whitespace. + strains1 = Path(tmpdir) / Path("strains1.txt") + with open(strains1, "w") as oh: + oh.write("strain1\nstrain2\n \n") + + # Write another list of filenames with a comment. + strains2 = Path(tmpdir) / Path("strains2.txt") + with open(strains2, "w") as oh: + oh.write("# this is a comment. ignore this.\nstrain2\nstrain3\n") + + strains = utils.read_strains(strains1, strains2) + assert len(strains) == 3 + assert "strain1" in strains From 008ea1ffa993a553c498bffddeae8141519a19c6 Mon Sep 17 00:00:00 2001 From: John Huddleston Date: Sat, 20 Feb 2021 13:15:02 -0800 Subject: [PATCH 03/11] Allow users to pass more than one exclude file to filter Updates the `--exclude` argument to allow one or more values and the corresponding logic to read in strains from these files with the new `read_strains` utility function. --- augur/filter.py | 12 +++--------- tests/functional/filter.t | 12 ++++++++++++ 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/augur/filter.py b/augur/filter.py index 4357359f0..d8e1d917c 100644 --- a/augur/filter.py +++ b/augur/filter.py @@ -99,9 +99,9 @@ def register_arguments(parser): parser.add_argument('--max-date', type=numeric_date, help="maximal cutoff for date; may be specified as an Augur-style numeric date (with the year as the integer part) or YYYY-MM-DD") parser.add_argument('--min-length', type=int, help="minimal length of the sequences") parser.add_argument('--non-nucleotide', action='store_true', help="exclude sequences that contain illegal characters") - parser.add_argument('--exclude', type=str, help="file with list of strains that are to be excluded") + parser.add_argument('--exclude', type=str, nargs="+", help="file(s) with list of strains to exclude") parser.add_argument('--exclude-all', action="store_true", help="exclude all strains by default. Use this with the include arguments to select a specific subset of strains.") - parser.add_argument('--include', type=str, nargs="+", help="file(s) with list of strains that are to be included regardless of priorities or subsampling") + parser.add_argument('--include', type=str, nargs="+", help="file(s) with list of strains to include regardless of priorities or subsampling") parser.add_argument('--priority', type=str, help="file with list of priority scores for sequences (strain\tpriority)") subsample_group = parser.add_mutually_exclusive_group() subsample_group.add_argument('--sequences-per-group', type=int, help="subsample to no more than this number of sequences per category") @@ -246,13 +246,7 @@ def run(args): num_excluded_by_name = 0 if args.exclude: try: - with open(args.exclude, 'r', encoding='utf-8') as ifile: - to_exclude = set() - for line in ifile: - if line[0] != comment_char: - # strip whitespace and remove all text following comment character - exclude_name = line.split(comment_char)[0].strip() - to_exclude.add(exclude_name) + to_exclude = read_strains(*args.exclude) tmp = [seq_name for seq_name in seq_keep if seq_name not in to_exclude] num_excluded_by_name = len(seq_keep) - len(tmp) seq_keep = tmp diff --git a/tests/functional/filter.t b/tests/functional/filter.t index 6e9085c36..e4c3d0c74 100644 --- a/tests/functional/filter.t +++ b/tests/functional/filter.t @@ -164,3 +164,15 @@ Finally, exclude all sequences except those from the two sets of strains (there $ grep "^>" "$TMP/filtered.fasta" | wc -l \s*4 (re) $ rm -f "$TMP/filtered.fasta" + +Alternately, exclude only the sequences from Brazil and Colombia (12 - 4 strains). + + $ ${AUGUR} filter \ + > --sequences filter/sequences.fasta \ + > --sequence-index filter/sequence_index.tsv \ + > --metadata filter/metadata.tsv \ + > --exclude "$TMP/filtered_strains.brazil.txt" "$TMP/filtered_strains.colombia.txt" \ + > --output "$TMP/filtered.fasta" > /dev/null + $ grep "^>" "$TMP/filtered.fasta" | wc -l + \s*8 (re) + $ rm -f "$TMP/filtered.fasta" From 293b4b01da759b8adcfd587fcf7e1acf79aa8cf3 Mon Sep 17 00:00:00 2001 From: John Huddleston Date: Sat, 20 Feb 2021 15:31:59 -0800 Subject: [PATCH 04/11] Intersect sequences and metadata strains during filter When sequences input (or a sequence index) is provided, intersect those strains with the strains in the metadata while also tracking the number of strains filtered by this operation. Note that this approach is not too different from the original filter implementation that required each sequence to have metadata or be filtered out. This approach has the additional effect of filtering out strains that have metadata and no sequences which is a filter that used to happen more implicitly before. This commit adds the number of strains filtered by this operation to the report at the end, so users have a better sense of which strains are missing data. As a side effect of getting the functional tests in this commit to work, this commit also reorders the report output such that the user always sees how many strains were filtered and why before the error message gets printed when all strains are filtered. This commit also adds a functional test for filtering VCFs. Fixes #681 --- augur/filter.py | 58 +++++---- tests/functional/filter.t | 46 +++++++ tests/functional/filter/tb.vcf.gz | Bin 0 -> 330904 bytes tests/functional/filter/tb_metadata.tsv | 166 ++++++++++++++++++++++++ 4 files changed, 245 insertions(+), 25 deletions(-) create mode 100644 tests/functional/filter/tb.vcf.gz create mode 100644 tests/functional/filter/tb_metadata.tsv diff --git a/augur/filter.py b/augur/filter.py index d8e1d917c..2634448ff 100644 --- a/augur/filter.py +++ b/augur/filter.py @@ -188,8 +188,12 @@ def run(args): #If VCF, open and get sequence names if is_vcf: - seq_keep, all_seq = read_vcf(args.sequences) - # TODO: How to best handle "source of truth" for VCF files vs. metadata? + vcf_sequences, _ = read_vcf(args.sequences) + + # Intersect sequence strain names with metadata strains. + strains_with_sequences = [seq for seq in seq_keep if seq in vcf_sequences] + num_excluded_by_lack_of_sequences = len(seq_keep) - len(strains_with_sequences) + seq_keep = strains_with_sequences elif args.sequences or args.sequence_index: # If FASTA, try to load the sequence composition details and strain # names to be filtered. @@ -224,6 +228,13 @@ def run(args): # Calculate summary statistics needed for filtering. sequence_index["ACGT"] = sequence_index.loc[:, ["A", "C", "G", "T"]].sum(axis=1) + # Intersect sequence strain names with metadata strains. + strains_with_sequences = [seq for seq in seq_keep if seq in sequence_index["strain"].values] + num_excluded_by_lack_of_sequences = len(seq_keep) - len(strains_with_sequences) + seq_keep = strains_with_sequences + else: + num_excluded_by_lack_of_sequences = 0 + ##################################### #Filtering steps ##################################### @@ -492,15 +503,23 @@ def run(args): num_included_by_metadata += 1 ####Write out files + if args.output_metadata: + metadata_df = pd.DataFrame([meta_dict[strain] for strain in seq_keep]) + metadata_df.to_csv( + args.output_metadata, + sep="\t", + index=False + ) - if is_vcf: - #get the samples to be deleted, not to keep, for VCF + if args.output_strains: + with open(args.output_strains, "w") as oh: + for strain in sorted(seq_keep): + oh.write(f"{strain}\n") + + if is_vcf and args.output: + # Get the samples to be deleted, not to keep, for VCF dropped_samps = list(set(all_seq) - set(seq_keep)) - if len(dropped_samps) == len(all_seq): #All samples have been dropped! Stop run, warn user. - print("ERROR: All samples have been dropped! Check filter rules and metadata file format.") - return 1 write_vcf(args.sequences, args.output, dropped_samps) - elif args.sequences and args.output: # It should not be possible to have ids in the list of sequences to keep # that do not exist in the original input sequences, since we built this @@ -517,24 +536,9 @@ def run(args): # memory first. sequences_written = SeqIO.write(sequences_to_write, args.output, 'fasta') - if sequences_written == 0: - print("ERROR: All samples have been dropped! Check filter rules and metadata file format.", file=sys.stderr) - return 1 - - if args.output_metadata: - metadata_df = pd.DataFrame([meta_dict[strain] for strain in seq_keep]) - metadata_df.to_csv( - args.output_metadata, - sep="\t", - index=False - ) - - if args.output_strains: - with open(args.output_strains, "w") as oh: - for strain in sorted(seq_keep): - oh.write(f"{strain}\n") - print("\n%i sequences were dropped during filtering" % (len(all_seq) - len(seq_keep),)) + print("\t%i were excluded because they had no sequence data" % (num_excluded_by_lack_of_sequences,)) + if args.exclude: print("\t%i of these were dropped because they were in %s" % (num_excluded_by_name, args.exclude)) if args.exclude_where: @@ -561,6 +565,10 @@ def run(args): print("%i strains have been passed all filters" % (len(seq_keep),)) + if len(seq_keep) == 0: + print("ERROR: All samples have been dropped! Check filter rules and metadata file format.", file=sys.stderr) + return 1 + def _filename_gz(filename): return filename.lower().endswith(".gz") diff --git a/tests/functional/filter.t b/tests/functional/filter.t index e4c3d0c74..cd1bccc50 100644 --- a/tests/functional/filter.t +++ b/tests/functional/filter.t @@ -176,3 +176,49 @@ Alternately, exclude only the sequences from Brazil and Colombia (12 - 4 strains $ grep "^>" "$TMP/filtered.fasta" | wc -l \s*8 (re) $ rm -f "$TMP/filtered.fasta" + +Try to filter with sequences that don't match any of the metadata. +This should produce no results because the intersection of metadata and sequences is empty. + + $ echo -e ">something\nATCG" > "$TMP/dummy.fasta" + $ ${AUGUR} filter \ + > --sequences "$TMP/dummy.fasta" \ + > --metadata filter/metadata.tsv \ + > --max-date 2020-01-30 \ + > --output-strains "$TMP/filtered_strains.txt" > /dev/null + WARNING: A sequence index was not provided, so we are generating one. Generate your own index ahead of time with `augur index` and pass it with `augur filter --sequence-index`. + ERROR: All samples have been dropped! Check filter rules and metadata file format. + [1] + $ wc -l "$TMP/filtered_strains.txt" + \s*0 .* (re) + $ rm -f "$TMP/filtered_strains.txt" + +Repeat with sequence and strain outputs. We should get the same results. + + $ ${AUGUR} filter \ + > --sequences "$TMP/dummy.fasta" \ + > --metadata filter/metadata.tsv \ + > --max-date 2020-01-30 \ + > --output-strains "$TMP/filtered_strains.txt" \ + > --output-sequences "$TMP/filtered.fasta" > /dev/null + WARNING: A sequence index was not provided, so we are generating one. Generate your own index ahead of time with `augur index` and pass it with `augur filter --sequence-index`. + ERROR: All samples have been dropped! Check filter rules and metadata file format. + [1] + $ wc -l "$TMP/filtered_strains.txt" + \s*0 .* (re) + $ grep "^>" "$TMP/filtered.fasta" | wc -l + \s*0 (re) + $ rm -f "$TMP/filtered_strains.txt" + $ rm -f "$TMP/filtered.fasta" + +Filter TB strains from VCF and save as a list of filtered strains. + + $ ${AUGUR} filter \ + > --sequences filter/tb.vcf.gz \ + > --metadata filter/tb_metadata.tsv \ + > --min-date 2012 \ + > --min-length 10500 \ + > --output-strains "$TMP/filtered_strains.txt" > /dev/null + $ wc -l "$TMP/filtered_strains.txt" + \s*3 .* (re) + $ rm -f "$TMP/filtered_strains.txt" diff --git a/tests/functional/filter/tb.vcf.gz b/tests/functional/filter/tb.vcf.gz new file mode 100644 index 0000000000000000000000000000000000000000..1eb0eeba478ba88b5b9eeaf35258c7168c71da16 GIT binary patch literal 330904 zcmb5VWl&wg^CpbDYk=VH65K7gYjAgWzc;wMyGw#Ya0~7p+%0f%*9&*^``7N)R_!ah zr@HE?KBqtQOwCNs)7^(W773~0Rn`Cs*3+EL+rk=ZswcpML?DIz)#s{GZE7Shf6X>F zoUf>7o5X%?nSc4>aWyBq>uCrfly$y!My(_xt#gCq^%^ldS`zvz4%~2w_Zua_SvV6G z^5H>dA9xf94iw1+6tFwfJ+VXlAO8~iO+og^Ave<-K7{pRyU?^vYe40>}?`}BFn}7A@vUg~q%$;en3(ahO^*{vs z>lFvc#o)^DpT1+-xCUU5-%u_<$VIgGGBHQ>2^F&HCj~^OP60HO&c=d(qDn68eGe`^ z#yoJdm2Gzczw5FyZoq)GqNHx&dR`zo);dCr}W?`kSn8V$B_4xb!(bYCfUE=mEP{90e)DK)X z74XQ~87h106!`LO#piCao;}+<{y;~-q82P__dy>Rd^EYE>`dS6GI@6NsjL(N1^C$$ z&`v%W^Lz`0jLzSlfmir2o7XT?bA15oK`(w>1}biiL=f=xn$Nqh-@D0TX4?ne`Wbuo zlgJ5sPp7d8pg?)FXKSTblhF8AhUff!+vM8d(!En}n}}U^-gY7(=7-+L?Z<`cRo6S; z;xHjZu}?VYscyrMucI?0Uzv{yjP6R6)BBl~z1}Q`Bq)DJN!EnU#JLi)FW$ML4PZJW zD`pJ7-oJdEsh4eAoR4ha?0tsDc;jLN9zlkkj|)+taIrbuIJX0g&@WN*Vk4M>8Nq;O~|oVN9OCvq~k|3a9q{( zaB$zh_xftTD@dRxZ^xJwn6(WNeCQi9{}?uD2TyLL7s6(IMBWJwov#CL#5h05GN0N$ zo+njZc6tE7J>V}A2ub4AZqs-?dD+LM?!^H(NU&$al_3sWtcad(@n-t)5(9yF26mMb z6Mz?lvEihuLg{ayGMYgB7Bac}H?`Z-w{$ zhzDu<*hMVwWA%-4&ol7VSq_-J?f=sLMCw|;j_BKdBlfB8GdnAwt2@B1H7?mxKsu$=3qxL+g7oS3Bb+wultKD z(V3CtGuvVB65;4#!YW_uKi=O#i7vAvg~oj!ZQD0p(c}&stRY3-cenK)RX{Yc z&bQO)49=-3_QYPLONi*l+dWAS=>2eV@~Kj``Gqj+s^=NZmEZGkQBSKjpxSitOZKVQ z_*_s&XmbbbWT^Eb zZXt%2*au!Aha4pCkZW&qbS0CW%2-#CtQ9*SB6KF3No_@8dQo%!i9b~1BeoaMDMlzG z`k%1=&k&ub=|YWq1LJ=O*adVRiY>MO1rj#Z4#v=V{=t_r5?k?8>mukMxxol!&IrUw zokaijf=Gi8Hr{ayjl0R~%iP%Vv^cc^pH#df@1HU2{~r+jGxqnN$^RE{{`rn4g)aC1 z25C~tE$&s&jFH4i{}T#LFdpuziva+hKSLD}#Ip8PZe{-ia#sJS;pP(CTUHm#w369d zp8cB~GJEmUVuVArMrskQb2&_Wp#`bog!_N0Qv`966nyc$ngoN07M21ge%QkQt@?}9 z-VzgkdO_-I^S#1{u&_sMma0fZK68pFro$msr@hP9q3ik?-1k?KewO&ATJ`?tBcsc*U2nPaZK0F ztdFBd9OsSwUdq{hYpyp3IJ!u~l&8CmEOU=O-)j+p9!MLgE%W2Rw#iU*Q)$Oof;XgZ zjUKLteUU_Tvl}?h(Tt;ZDE~24sF5YuyRxw{d)H^Q1AKS8-2mx5wp+kNQvVVxQ#l-U zsmtU`eVeTRSRs>Y#Tod!I27zkX3Z7U>bl*^0gc10Lyat9#1dmBfa1Aj>SR#HICp~bJ)jlQ)dK8bDT zB|QJ#BcMmw897|uK{R`xOf3bXxV-s#68qSgjJUX5QrO(woCNv{k@iKdpl`UCywvh7 zj=v9@3r1w5*885Db9R*5e1f=&VA=%cZGLP4!60ybVFLR`yilLp%jrAgl)5bSdY-aN z-?Pd6&B^&vWdnKZ{^jE1`QqWG?g!#`VY0rL*MreQQNZme#QXK;edFo40lDW<)erIx z@)9HQytuj({ovw$&A6Do#ZSTg3wgMh1e?83Q9uG%!S@FM)+v{mC*ad!ZVdKyKkCQ> z?IF?3-$`2TJAt_9Qqb`%Ajd_ssy@?cWbkI5L@D!T(DFS|wKn0naP;Y>(pXXj;}GzC zKwber?(DfLAx$JphL4? zc_J*%#^A!2*-<68OX5A5Cq5sb-;+zBDv)IG;GL~?y<+%7g{*mPo*V$U7J;&>KZSQN z<{qfl76S^sa=iHQiV5Da3l}Oo*YBN9c9@*>nI4C2PG8ym^kby8P;m8aTy18j%s#Q? z7WA#Fa^bG>>5UZocgcAX10SpvihkT5_>co$@3%H|cY*@n{|fbe3wk>4%j0=yY8-3 z-ghu73q^yDABb+)D_x9vN6{TVj_%(T=YNmBWmYB{dr2^oATs)cZz^@`#R`nO0o|SX zc?n`43*6`daL9IKLO*{8N2mBbOA%iRYiMVuZ_Ogt9W`0fcvJSvFP{P zvHQf-!O}f|ew8u-Y;YJ4ecoHBulpN&GyU|{&B+S`kXtsmPxjf@ma;^yeI5;CP%Rz7~}Y*?Xo9) z#2UQ-k$%2<0@sMuB0qto())cH%G_Eo z+?d$#zbS=>Zh8zQ-)vw6Dzge2tI_i)wy5nST2OXm*rD^^``0}U_s}e z^SmIRWQ8QOvqbJ6&xXS0f15JDpDFhJ1l&kfkl03pyRSE{>~d3CdcOBLP9K5PKY3pB z+d%y1F*;WWLooy)lj4wx=QGqSoA-KlK1>|5-L7GiV8RMLgdNsxR>%#}HoCRatNOc7 z*6=qM@cy(fxEAaazF4vjo_rHn21crPa9JJ1+Ryg}Lon|CMknPG;)$)l`-I~*GTb93 za3eM?oh2%1!N>fhHan5YU3t}!A;GBUV_$PyJS=s3nKr=Raqhk#s66u#d%tKD>-=U` zVf~`S${ITFmO8XyJ$a;|ctvy+WJXkK=?<;+}ura_={ zka53jL&YKE_9alf^%Yf434Ho($lyv8kxl&93=%8kQ<6}=Fv2XwMuhGe913lvat*86 z2Iv%C)_-2?YR;}`Cc%S_REUpl`?u6rTHY^|`RGWEi(KohpUIu);75F7(>`Ddlt6z% zklQe)=U%|8?xXK7H33xiP#JW>>8aNv^b0btsHQS@Cj5rKO(TvOc(^VoE4dAeI<+O{ z;9)Fd%%~f%*-U#CNzT}JnOPZxbMsdxbfJQ9RYtU%y2Knl-P>^?b}&?h6c-g>lztP@ zHq^6NV`S2~>SYbLK5pKST_rr^c8+Ff9Awm)gRMkVuW1s(totUP_v)k-W}AJ`V5Ek@ z&4kGR5^FemW1e+Fj54gTOSOkGf}DfXzWktFp;U;=A6;~+%Pr_>qdK--LhV+5a09@} z)SovwrD4mHX??92qJO-l_Q;RkJ40FQjet0-BYT7!Ctv3e=B3!`Xw)|yLaV&R4j%AKRe^kX0k5!y4tX(0~=K+ zwU=}7!_z{e>>-QUAA)V_^zXM$H?Z`oZAUpG}WbS-9;eCHYj__QPWq!I#@rFdZ~tpJvtGV5|kIAPg^Gigj|; zx5YEi#xhtk_*QH3Ep%1T@5bro@~k4*|L0BplPQ2j){9h;4=n~%0q!NHv6Ss=+i8|=aS(U~YF3;iC%p2bE z@6^8D7}zABhiB&hR6_{Rugb=o!TiG55YZe96nSbMh^*J7Tr;6>mR*%ylxRD`4A0&R zY{-W8hgzqT_a6x2n?d`J+h3%XPp_@HF#K?77K$MRwLK+4cItY348%V_F+(}c-T?(&7xg2Qe;lUSaOHw}fh;J8P6S&|$tf;tm|(5n?pzdo=4IF5kRAxq4tE>C5Cm^R&_j_3&U*B=cA}3ECHh<9cdCE?cl*Yw7TBS0qLV+V$jZoQfAyCd}{vKF=3g zhjw7Ku@G_(Lv7lEZyrEhZO2!m=HR`94RRA;Vc(RgX42JqBcwD)*Ag9WbPEvgTu_Ly ze!fUozfX-0QW(n{#W+R@Uxu=UK2$&xr{qXoYdo@zAraFIzMAZxIxdG;^1$WVQQ|zH z-Lu}WxM&^X$6h+bdZU^^6I&vL4KTtTwYi9|7U=fx3+~)gO6r&UBLSYiH1>&S{$d2r z+!NO_W1f`qrE?CL;-RI`wJhRL6mTf_P-%RZRI*M*6${PzBKpwoIDgRxCN(j z^3}xB2w1vr2>H~1PY_ojxydIDEi(I=mkW2xM54pqb=1IhK+^-AtscYNY;3B>AyIU5 zw-&0axb4?7b45&awqLm;vY&&=-aiMAn6X@PIPbKlHDxmL#X+or|U{da@Yok z+F`PppL&myvaKB3cP*Dm)>Zk}vNi#dN)ZNW@&AKSvMXUTWK`F9SSaMwDo(!Myj5U#o z`+pJgYdaYo;7)aO*jpiQ#}ThpNwELbJ+wEctD0@48Eidn|Er%06LjN5DG>RI`y95m zL%tPUoczc6dv|T__>no_$?KN3CS?^nfORNb8vx05F*>@VLx_w+$~4FLibBKYYhk;G zUuA#1o%(rD&JHH$GlM~o5I;LUC-ougz*KfY8^bJ}D{?E1nCkeSu22RpPmvas7K%P0 zCP6F6fOi}+RE{4dgk@KI?));%W`@P%CCY@?#XwWuZQKf_#P@% ziaM3ZNU19NR_t1V@NOZ{w}QiY+OiW`=IZcKdRA%C9((6ZQIfeSgUPn+nJ<0PvhJo`AAAZuRe*;BVeLbF7Kgk<+>jV?~FQu>O$zUq?$EG zK|SDw{ONrthNYh~Z0|tE3YQF+@EkI7JEUT=Y0uC&xIGmU8jhhBhB{pVF z=+pZ9H;+&u;bf-=82W0W|& zl6hLNp@$+GUW`bAiVz*V4{mjr_IDM{aBqhPHIVk?#chfPD!`WKG&L^YhXkPYQIwX; zhjHWR4fkpUdC~g6fL8_RD6n9vfMrtVO(vZqO;?5G_x(Fc`YP>DH_gs?8zQb^wy@7t>YEng!?kn1@-P|P8**1^fQmSH#k0t!xXj%NV=5Asp? zJZ<|SkBaTL+uwh~qr*M72@+02&ep1~wWjP&IfG>eqg4hbr;>AE)}=jIoUWbUz6yC} zq4%MxelqSBuQ&U&ad^kXlH3RA`H+~G9%9E{8-foiN5aeeh4fQ7)>1eD2YU9Qn<9Dw zPM>UE*^3Qjjma;h1k>N3MzZWi!}4_!ONI2VjaxnYt^63lsI^L!$gjXQ9L&X{C3IK6$_F>UOq1muXjPeup#%4VAZIk zU9;bs`t>GosHpXz(%|gEQ`PZgi?!o&6S*}xTWqoDK6BhnpHAEgX=c^y69Z$!HH7p2an;PmQWFGjy;~j zu!H_FtMYpk;E81BbG2#bw-hdw%->&|q9w7AhgI@!smqmH+GKV&$=47J1UT}8;PO9QuB;<$|4CsO}W|;p`p^l0yj2T1i%$39g?Zt+2Pbg!Q`CH?t z<(uDp@SyMUH$d|DI&9np&;Kys33@sLd}*=()B4XvDMQCTVl~a$Kc;o;tesA2`faLP zKsXqRSbG#g^kvZ@_Y_@~r-7V3_e;WWGbOo*$|`#MP3lOPl*@5o!1~dRCd6pBG~2q_ zj`(^wYVdMY`HL(!6_2=|?F5^3c4ro@n|oIoDBUbFKo0Lf*zzps+mw|Br|0QYGJ}`F z$6RpO#6|WuT>_@38e~t#7klk8oP2Ip&vqDNDO_Ij=QheioH?AuFiD1xjQv{!MJU4e z6wWkt1jV*$FI=2AU)qzTv3jtlSu3cWGOt>yO4|jbMMggMlpy40;AVlGZ(yP0=UkAo zkrK_m_C2CEn_|lHz-hu6lz@w$1FSo?VvqA%)27SWPG)sIKF3u^-jkcr3pb}9>MgT8 zn;`HWq{aD(sSYww3sSeKiJ#8ZvK#W1bHY(`dX%IiJY z|4go`8R(^WbDJcmS|iuj3m08YH8CgTR5b`lK5In(!Ck_KStWyTeR#D@oWAZ( zF`f2OGW8!P35Kd??({<(_4#yR+ed?_sIIg^g)zgkgpnuV#&l$~kk26gwltAbDtrrB z@8cJ5PBydK$8<|M9g$JbHiOdXm-9XB$Ci{$=NBo7lt|;oAilhd(aT?{H1xHk#wm<- z!A&}ZD;&s(L0fVc4Ab`JVlcHLVeo&f>Z$h8PfYYatyVzCukDDzc6knQrAx%~@AKoWlmz< zf4C|lDmfybc2Lo}cwkvw_ODAE3QG31+ljlZM(4)8dKrly<*?P!$)kp+CQ93l?1E3R zw)B{mSkj!qe<(T$b&M4J@hdy*HLCk$yc*pue;lS?bvvZ%$WgVk$_}kPN@p}XU2aRe zn`~~HxX12TE>3U?dLGePI{M^|2;DLr9t5>lnHl#4pO!KFw(Edt)ua(KOAwhp3y2Pr zEJiGzmg|gW{#x5%vhCcQ%wiCoN2eH_gi!1Mm38?K{@^ADh!;^)3W2vG=UTEmiT1iu zax7h@ysW{T4<XTtWrS7j=GBP$625lh z8d1hMY4gN#?YobdlKLcgdA0=PCH0F=^h5)tmAFglVnX11Ai|}zlRR@&TweOk#7PO3 z;3s8+6D}cT%oaHnBFruSdE0y;y^>V9tnZ90h=J?ZrP~jDw)UEgIAeMD1bv%7uw?W$ zQuCJ4Ao3{&?yX}5&BM9VjbyAYc;D>Ad#gL53qMzd=j;u>tzriFDe*!7z7xVs%pB*Z zW&OCt`!{B}pUbCxix}##*r-tIRoT`uuB|YX^O)U35{(9J=bnz+;1iKW89EH4J zO|l9OIamPc%uyQ`As*@jtv6^gOx8$38p!K1U*LzQ{Q9uPngd&uu5>{i=r_wUzmmRA zPHb>O*`+qWR|&aQl*ON-=sx;QADgF6C%>ikLUVgZ^=yfQ;E5NqW7!WrLH^-do4B;LH`4C;Nz$Y6)r)o>Y+@3@J40( zguQN8mxfiCn?lL*@;9yF1EfYu*=lt*_WoRG*hFa#ECZW>9g!LEW|_O@N# z&$Ukpo5zpd4=Yyxnx&*L7ST0Yv(eC6coT%d!(;Ztk6ptH#aSj1-10iwsKklrL_|Rs zjgcJnDg53seRWaj#-7_V(5&^%9ox_g$l|E+`{vryG0MQRva=^$5Ed7Ur1rJ2-o!Kh z2G#6r#RZCIvSEzRS}b*9vS|ptuU5P3FG~M9c!%O3jUj}epAlwYRn}}cS zUF)rl839nW_FL-a5a%72NmO$asDuZ$d+2XW$c*Hd&%GWpB;j+|faB?$h1iZ#R%SE9 zIe+OGn^T$z*Or{4n;j~3B@ooF8e-*Y%PoXKIoK@$HNKYD1% znQUhuOeryapfmei9foR&iQSSQCt+j(@0XSGlIAl?xC$NYKsdaU@)t6hXv( zL>?Xc^}osV4UXfn`E?*#rY1Vl$y~22Q|2PMhuit)^-B(S&fajE5BQ+kXorZc)}}DC zP62U7Bmt%$NkM#2q!tA9o6rcm?k`{B`CiQ3+Q6S8sN516zJ@Bg5C`7yV~G0JEQX@@ zcFWbtV6tHJi`Kpom-Kppn+M7~VbS~1e%q&&mmKo9;f@(Pee5xy!oRDE9Ek!^Z>cT( zZR+tFX;NUZ5gE&a*F~)v2@~kFefcJdX=B1seuOV_Bu8N3kV+bP)J|<@l~-^4rvAZ# zUY?SxSKFS=Lw^E$7{i3TIop6a!SKU!lAKttnU6EDg6rUn9HBLB=T$(huBGT7MVmHA z=@wL@%NRK1e_7fO?d+~Y-1UJ|Nlapy zTWD_QD*W+m`eAk(Z(sw%0cejz&um3)0|6!;CQsZc441oF4pjlqCOkd;6vJGr^2zhX zPncD!-H$bl0ec-Y(2Ld3i;goeTh!ki9YerX9SM3jOupGCxR7FXN;UThxtSx8GVlC3zk(nW5rqk>GRt86B%Zr2$3@cDRr)qey93yLOa zrrGezQtEz`esH3%SPxeLC1DA4eF*-i6?)5qqdL-{04p-jko81MBAL&|DWbGitx!9?Wb zkgTjeUF)4!?%PNl2na00i0lq$`;lr+VLrN)^}I1V%QnN#1}5JW773r$+!TH?QTcM~ zHw=?g8kzaCbDo#bBoEsd%+>K09L`>81`ubD;U(#2*>X!G^Bv{{Yp=9Tc18+Oh(gor zBN<2))C%h4bRz89mP&L!A&yhvT8iI6c38mOS#)u9RvYS5~(>ZDoX<+BuEqcp@=8ds< z{IC;ituOG6>7DKl)V`Qf>gH0%c5wg_e$yh;;uyswjn?inQ`9BqMT+w&YKJ6`NH_kL zPnbT)qqaI{LfLwD;6WTP4DWS`e1~J{q=yMbWbLJpjw#My=iD*>S8C|j`l|osm2n+a zYuCAQC22Ii-w_(%$n9BEN_hNCoFB!wxSH;GJUzeIT*4?XpOO zXcTBBDdj{-(d-#Fs@fMoL(Iv)iq&OWA9ie{G~V5^2V3QkWhRwl-rrTnM;H3{QlsFR z357RH!CgY}L%CqrE?{g3O@LkF+Jn+2jWSt?&Fp7VBefdbbPkq_wP~fDXSs0kP~>KZ zZCtBl?WdIWg_5BT(2LFGvCjc}>e&VepY}IPz2pNfX%?&!a+IlWUseHa`*{gUgRS%Pv`1ZLph=1_ILsSe75 zOcEyRS73IKP&rhsT~&J|rPB-+coa!%Ic~FP%4^h(`xS9fUUa#*!Yen08gKV-dL-|O zhnnR&j=vok(yT$5v4Dvi}L@1rn zQfL2(Rw%Nr&GE6ZRiwV=g-p}c8(MC~)Kjh3!0;2ZzfQb$U#|Wvk_U9PG5N|VaOt~) zcC9~~oQt+)F3REk!c>Se#!r#Y@w7?bP|a>SnM&7%k*3NAq^tCQ)BG+ytr;x!&GsHO zG~KWM{`N(BZQwJERfb?xqeJ258MtVEAC!TsS!IXay62X|LHus$IMirAF4t4LiGPqMrw>d^0Mvl2ElCuG-k*=HUOR$|9E^g?!bfA`|L%RxLu z_PZE3>$q8TAT_Mo+cLQR2!ARAgkEOIKl1uH}=X21Ibk_KNx9I4z?v3ziAiXJ68V5Y8On?|n18aWM_q(Y6u3hU$gEL~=m^)=VH;m0b1 z>@wP6SbZqX&F_TKTqnwPHpSLE3L4xYCW&Ij3YJ?MU1hzBS6#WV6|Wu6#YK_xLTOyHczpH z{;BL=#{d(dSW8i2T%Si4Fi2+_QIu<{ zR~nsJFWdj5V0Sm3WJ_O(EUTr1;1i^B{GL$E7$5nxtLonFwCRstzj1umEl&@%N`c^2 z9oyd)I@UTZsAF4r8oR)%`D}Y0F9G!GWn41W>UY>6N;r!67)FdAXZ|-PdpO$~!Q&@@ zm9c6_#eX>J!g_zY?RkhuD%9z}jFiKy7H5S5^@VA)*XE>=86r`P%pdIGl>@Rx;gFo} z?+I1Nw2{pUe?(QOMvriIx#sP>83Wi(6_kf?{(d$>m~x(`I)PiWtwdz@u|=LVW0e`M zDRoJp$t^K<*3_yIN;n`bIP;qfSk~q=V{@%oH6 z9l(1E0-;DIuc($#EZl}b_|oXwJ#CZG?v8{?ky%7e5M~x1M#X4jzb!0h9ML`ai)1#T ztFR#HvY$$nO1qN;`k)-lpX*aI+-oAExG^T-@kF_$$=j*@BXf^#;j`SZ*{WH-#)%(_ z51#~w5}Vi8(sPVRCNT3dHeXMuT+me{tE% zIs%kq8AhRy>QIiOhbpU>VADJ2SPyx>o~S^0xW<*EZiD2Xh=%4xp!suXX?K*^2=BV;Q`ybB zHQ5c%VU<{s&Y^sEm>PR{F$|x}KnokFU-urn>Y*jMsRpA z=Zo;=SoC|H=M!Wu5`Y3^D^I^gn`o0kG}9leY5@I-D0auP-ZN^WMR{3MM$wvwOhK$& zU7bLyBWCPxj^0$~^bHl!fh|fz*KaRI5~dsIKnkRDT!J69FsOF90W2W~aNe_By2y?T zBi9a&5uy@jQnh-6%WeSEeR=stCmaR8E@hf3Ice2_Wwpl?pL$vTP}J6F)JB@bvTu9f z-)$Uj-X*7AzjM0qQ>5w=G&&I0(j6F}-IZ|072$M{93mLlV?&st%+`S^L+k&fpx1s% zpgd@bPKDwol9QU*2<&NW(lRJ?`U4Y#RauW@wjXL>Q{JGgsTst#B#$Wosj6Bc1_`~= zKG!*Z%5kp^)$EBeH(K58WbAsiWO1#ZgCOBiFm)7};RHTz!87SZ)Wcmz4W-WSPsP;5 z)xq!xxtTRF3e@;A4G>d11q56?5txz2^hm8yVQ4e8NcW?Y=OMn3E?cRRx_&#qq)~*e+1QYWBi$~ zh>kV&I_S=Z<6hQ(Shti%K5UbAiCr}qH7e-KT~bm5m$K3?djavfvA>fKS^7v@jv z8p0LdN(vFXn?d5g3^BBKy2LI`g`En%@7ZEL{6?<4_vW<<3Cj65X0|ZA)Vx>CYo@nZ9v287!6VW~)!a)sFqws-J)*TL`AFT^2_+DoPFAksQIxgEmAuHX zp@4PZN=hSdO3aK)DbWH$rl%`L-0yxhhs|pcD%g9pcT{83C%7 zqd`v_TrbfKbID}}$9=Hg_dMEe+g8_ttxv{NuppN5(#i6P+I9%9oHpl^ zlWOw*jC6sLc8RGk#TFFeN+_Dtgz@;0P+r5ihD1uesI$ zvnCEh2bEfDj%_o&x}BN(_q;hHFOw4PSy}}PD_v+30|`CpJ15lR`CFS-g|tlub$5=x zJ3-+SVR;L8YkZ>;x%UBbRRfiL7?@>Bug0sXJ$AWjuV7Pd;btP`eTYXGHRgwvj>{}yLeY@L--52bi3i}W`(y~IK5(JgwNMYTiu}Ej880t zrh0|A08{9{*l(aYjr)KQsKrW)NL zMfcpZ71JpiDHAs%wOqsz0k$@)6}X-FTBA@e>Bc`zCuh&he}<2=1FgtbXC^!h*?#+{ zCtHHq|&L5L7XK9o>s9T(3Prtqr>UCjd}S*a9N>n^&>O)^#+sRRhf5Rqw8k>SeY z`THtu(O5J6VUUf@AC%eST+Cb6u(Rn|yGhN@^l!sK){NJJNO>Asf2%$aW$@_i4!92( zizXIL7ns9A?r~Kk<#X7*W?UCGGi_=3E|0B4bMUFw)acZt457*hTF}s(_DMZ6MLrrm z{f}&2DAgROT#}?~QH;V^)AYOvrM*K+J+>wdv0EZtLn+W9OSLK9mo?S22W1oNa=pn_ zJ_ys%t@(La*A8dr`p0uHf!s+*C|i;qtdzg=BEC{%Jnf>pYPBK~EGlDUcHlzidC3%P z)gqW|KCyjbKTaYk$Ee%|729KsX(H44Yn=gUD5cyM<~Q1oCH&guGRqoj$BZ-kRx1Ib zG||Li`LL<4_UQw6eP7GqqVezo%)d1&M^k9r|5)9VwihFtMM=hqB>aIVIPgTssE5S} zTkSxlK6d&&+I91sT3s)_KQ4+UlVJ^&ooZN=M*2skyp}iF=-qve(xWi73EfhaMl{z# z9l}LnO!5~RO}Z$pA4%|^rv=#Y{#*@uT{bY6S1Y?kjGUqztC z4ha^sthO>SvTEU=aAVCYnyG7CfX2Gy0SOm?fZ!7{lG7eXRdJjOO(_Qon}J{Do8LZx zP?-BTLwV-*7iA3@P~ghzGk@fD2G4ZofhbFm+G2%1t!}@f4z>=RV8{l1$W|gdKH7CQ z=v!#R^|@H4x&G(>f?MWQXf8v&Hzd`^l&QL_y809^hpnJOT7a6K02e~x>4K@p$iq*w zt&FJoUPGGcN_msLeLFaF1 zgvEP>B)X?XR)>LN(w2A?l8(T;8KqxvAyPtk+xk-l6wHlg>{ zPa>|v-1%`iI7UfE{Wbjx5|qdYJnZn>%{+g2JB_%+vy_o2QP9{l;QnNRGJ*QK9P!}v zo{&eP4|II)pJ^0rUqr^e+WX=@20YX1O0Ee6f25}%r5)&;)2Mwln8~%F(GiZ)j?RZq zc-*A^Jqu(0P!y-H8e1zTj=>*UX8Me{F@E>%rqSMf*v?q2WN_!;X!pp1- z6g)F={EZW7)agDvMik&qT)ALV!q8& z;veyMy$AaZD~&Q|FzcYZ>#b+89FJN2!q@72 z(RPIS*ghX2l!Jtn z3CB(gkS=&Ssl*1nKKpTYWV7`d1A7y>BH$a@udcRJJhQQKEr!Km4uYJ;N9xEf*~Taj z(v=_mUXX-j7X&jM`-`y`VMMr8k;>8;VH%}Ip8M-uGM#>3GNPvs`!!g%R`;Bd2x)~k zz!`b(KQ}I!<*X1CrNp(Dn*EY_a@vPmf~qt7X+%Vm;EEEG-0oQ}^Vu(viE>X4>VzJ- zS-{=QKN&SwrdeX;zX8HPJ-=vl8&DC5II)Qp9HSj+*@3!ic!=CU03%)76%@JUovSBQ z`x99Hgvmhi=GZZ_Vd*sjv;iv41_h6JY(sXO`%R4pO(Y?V1hMNC4q@q6gl8a-Z#tc5 z+w4%Rvq&?#*K8t;2p*yji#g-cAa#e|NpncI1;^UiWcbMhx?``Xe{l}k`|cG}N7lx3 zR5YrpP!uuKb$(tG1qY>>nQbM!x-_RQrL!iW$~uffStX9~RE3h}Wo!$FK&<&CiRHs? z_1d=YT&+8_f?tQ-jq$F8aJ=-&BH;$%Mri#%Vwzw^caG#nIjn2scZO*qZo#p`O%u=^ zhnpt$zI(+qk+tz0bx0ZL$b=qk2+!k=HIsH7l2va&?-t^qwyPjf719#89*R(#tc2Cb zz`hm4s|mGhWl2Qa&P4)kEM~V{5L^bL+D{^4bv6GymYAB0b4yoTO`o)Rqii#AW8xp@ zPBFsM|2NMRtl{Ro%~ugpfIb2H+UcR)@`nyLPe5m!9c-T1`|cI$7=nu?XT zcZA@x>QbmC%1j&iu4{qs3Xd$uXQw3z*G3jP%iX0|MXE@O*9g-(I~177aE)lA5fQE!{cx?Ym5i1^ z>0U)4oydY~#A>2vTk0xzniorkUR`0e55^P?XkNtI^B&$_@uuZTdGG`O-M8hV-!)=P zvu?v57zuj-%sqC(ffe7pjluoqdCV3u3k)GUqEIbHq8f?_s}jEue%Dm;qCjiJ63Fk9 zkR&-h8BcPudg-4{PDm@8KwuKmKQS|a(G7)HB@)C5OFUwt@Q|#Fjhli~-=zftQlT)?i}n}q*^rJ5TzFlTuu>Oz31zbAC94#`M^{OD zFxL{OBg8Jn-sZo3`$R$;a>KYN%B<+uuTX@r|8aWHoCA&zziZ^Ail2V>NPu-TG+qL` zVJ~pKUu_>|ll%GN8_3oD)Z1(8ZjFoVpje4DRnyk8D`q&oCe1n82A7~SOSlHzfm(ZI z3sM4qLC!y7IoK?iVJRm7e@`+~W@bTg8M&sW+nU;s$o12I*Q{6pdS(L6RpD+KnO!1C zf;X$xtDgWOod0$imOk4qeX=MXY#ReK2T}|Z$GKIxgL2w~COh%K^MvKPti31nSJGIy3bucW0r&Y~c}hro-e7?nZ-LQ*TFzD8%?y0Ic+WTV71e3M;kJbYE$VYZ1PIBN@)sGVw2FWw{;aX6XH^R( zg|XM9Zi%GKXVusj$gzcv2$foKj)4`o21v`(BD_U!w`#rJ{&_5Ah9u|vq3_nFtJ(Tg zuWszCMq9bQVz-}*q;AzhZgja~ckqOV(H}tZqUaVBeHsqdk_MbEZ-tfq?<4FR`5uzV zmOnI-)(lS^fSs`yalnVyqYocmue)22+hOWwH=w7ms2#zO!hq|x3Qc4#mC9mcXqb>2 zxgLm~L>9epez5t|dL^tgn6B+ohBp_u5@?oDK8)UM`=sF4LQw*tV_I`Bc_mj*RhQ>o zI1AIj(RIW#d2wug1weCbSu~@#(p$}_VMNAVwAsqS8X!D{eNkjwD>5dC%)s^(_QziJ z0DB^n+-*paL1Ty67V``~|3olYc`R4gW#rdTvmqARW#JW|oG#RrqG>S+gw+5Pq5D}qlw3DO~$e8B$ z1rdo`5~!X~L|NFg11Uh71oI-80Pa|_-@`0_%((zRHjeZ# zYntLX2!u^A`9mlbYN8Q0DRBOACo!7=oeeKWA=9QzgvSOe%xieRhwWp7b`&6; zA!-ecv+gbN$)vyZ*f4l7e%xSK8deam>Ove=c4srZdhN|^cnwyr#aXTpnhK8K+^ko} z*5>_|IGpYmQ}WXBkk=%No^{dlth+{%GIsWDDH`O$caWB78{KXA10&tA1E^xq5qqg( zzg#aKX4Bit>3DoKy`TSf{rUP54~@r@tI6Gc;#|lZ8$Qb^<2KV>z^k8Oo8^yZ(ZSqS7Lsbw?sy8CnaA0tv$=_DDsV$ng+1X8i zUPkGQJ;X#7t|Apxtf44em#M!l0hiQcwbAQ3;fNc)MVX zB;iP2;Z!Jw_0 zWhe@^m4;offx}AFXl(>8k(mXksh)=H65CFqARv`DgaS9)in44 z#>F#hZg5%4tvKX94;<)m5|5hMHps>{^DCrB7Thy3O?KKksuAST*HcrbG+0uoSdw2- z^k(4{wi8ZSa_$%Ec&Bq#Ko+mlXLFuHbfwV5l~{e+Y3)`(z+p`@jKy%6v#q9jKffD) znOxsauZSQ9l(rpj=%_6&%S(I(mQhepcUgXo9Y7lUCi^1D4(+3FhWsROvx)&z*=R&Cy2OqwNr zv!z023wA;cHnoL> z(@=u3PVSKQbugh7S_Un1Hes9t<+a~Mf*LpcfgrI@@J4QvSm=no+?|=kW_LTh#L8U- zu&HIv>F6_d@-5he;xxzgDnufxCj^+LP<58+Xm^k{%{zaMjM5}^sO4QH;DWNK zQT43z2qAyJ3jojUx!)qKB2}ExI%%~~{$PbKv=sO&zan56`o!)W+

*67Y4AvsSad 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�e7p9kBxnNtjoadZkyrl+DJ=5@>pP_IR}bv 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 U!8g`LqJg*nKScwI(P3{N0F_K-3IG5A literal 0 HcmV?d00001 diff --git a/tests/functional/filter/tb_metadata.tsv b/tests/functional/filter/tb_metadata.tsv new file mode 100644 index 000000000..20eb69dc8 --- /dev/null +++ b/tests/functional/filter/tb_metadata.tsv @@ -0,0 +1,166 @@ +strain accession date region country location db authors cluster paper_url title +G22670 10155 1991-XX-XX north_america canada village_k genbank Lee et al Mj-I http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22671 10223 1992-XX-XX north_america canada village_d genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22672 11011 1991-XX-XX north_america canada village_k genbank Lee et al Mj-I http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22673 11234 1992-XX-XX north_america canada village_k genbank Lee et al Mj-I http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22674 14069 1993-XX-XX north_america canada village_k genbank Lee et al Mj-I http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22675 14508 1993-XX-XX north_america canada village_c genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22676 15613 1994-XX-XX north_america canada village_e genbank Lee et al Mj-V.d http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22677 16490 1995-XX-XX north_america canada village_e genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22678 16493 1995-XX-XX north_america canada village_k genbank Lee et al Mj-I http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22679 18421 1996-XX-XX north_america canada village_k genbank Lee et al Mj-I http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22680 18422 1996-XX-XX north_america canada village_k genbank Lee et al Mj-I http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22681 18747 1996-XX-XX north_america canada village_k genbank Lee et al Mj-II http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22682 18988 1996-XX-XX north_america canada village_k genbank Lee et al Mj-II http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22683 19057 1996-XX-XX north_america canada village_k genbank Lee et al Mj-II http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22684 19276 1996-XX-XX north_america canada village_k genbank Lee et al Mj-II http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22685 50045 1996-XX-XX north_america canada village_d genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22686 50179 1997-XX-XX north_america canada village_k genbank Lee et al Mj-II http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22687 50248 1997-XX-XX north_america canada village_d genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22688 53221 1998-XX-XX north_america canada village_c genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22689 54902 1999-XX-XX north_america canada other_village genbank Lee et al Mj-IV.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22690 55546 2000-XX-XX north_america canada village_c genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22691 55753 2000-XX-XX north_america canada village_b genbank Lee et al Mj-VI http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22692 55988 2005-XX-XX north_america canada village_b genbank Lee et al Mj-VI http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22693 55989 2000-XX-XX north_america canada village_c genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22694 56828 2000-XX-XX north_america canada other_village genbank Lee et al Mn http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22695 57052 2001-XX-XX north_america canada village_k genbank Lee et al Mj-II http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22696 58385 2001-XX-XX north_america canada other_village genbank Lee et al NA http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22697 60053 2002-XX-XX north_america canada village_c genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22698 62796 2004-XX-XX north_america canada village_e genbank Lee et al Mj-IV.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22699 62806 2004-XX-XX north_america canada village_d genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22700 62957 2004-XX-XX north_america canada village_d genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22701 63113 2004-XX-XX north_america canada village_d genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22702 63670 2004-XX-XX north_america canada village_k genbank Lee et al Mj-II http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22703 63878 2004-XX-XX north_america canada village_c genbank Lee et al Mj-IV.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22704 64165 2004-XX-XX north_america canada village_k genbank Lee et al Mj-II http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22705 64334 2005-XX-XX north_america canada village_c genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22706 64712 2005-XX-XX north_america canada village_d genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22707 65165 2005-XX-XX north_america canada village_c genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22708 66591 2006-XX-XX north_america canada village_c genbank Lee et al Mj-V.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22709 68995 2007-XX-XX north_america canada village_k genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22710 73787 2010-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22711 74856 2010-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22712 78932 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22713 79031 2012-XX-XX north_america canada village_a genbank Lee et al Mj-V.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22669 9965 1991-XX-XX north_america canada village_d genbank Lee et al Mj-IV.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22589 MT-0080 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22668 MT-0712 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22582 MT-0718 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22587 MT-0972 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22590 MT-1103 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22591 MT-1128 2011-XX-XX north_america canada village_b genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22592 MT-1167 2008-XX-XX north_america canada village_b genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22593 MT-1206 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22666 MT-1212 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22594 MT-1247 2012-XX-XX north_america canada village_a genbank Lee et al Mn http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22714 MT-13-1408 2013-XX-XX north_america canada village_a genbank Lee et al Mn http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22715 MT-13-1711 2013-XX-XX north_america canada village_a genbank Lee et al Mn http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22716 MT-13-1712 2013-XX-XX north_america canada village_a genbank Lee et al Mn http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22717 MT-13-1753 2013-XX-XX north_america canada village_a genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22718 MT-13-1828 2013-XX-XX north_america canada village_a genbank Lee et al Mn http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22719 MT-13-1835 2013-XX-XX north_america canada village_a genbank Lee et al Mn http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22720 MT-13-1892 2013-XX-XX north_america canada village_a genbank Lee et al Mn http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22721 MT-13-2012 2013-XX-XX north_america canada village_a genbank Lee et al Mn http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22722 MT-13-2334 2013-XX-XX north_america canada village_a genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22723 MT-13-2384 2013-XX-XX north_america canada village_a genbank Lee et al Mj-V.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22725 MT-13-2690 2013-XX-XX north_america canada village_a genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22726 MT-13-2761 2013-XX-XX north_america canada village_a genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22727 MT-13-3209 2013-XX-XX north_america canada village_a genbank Lee et al Mj-V.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22728 MT-13-848 2013-XX-XX north_america canada village_a genbank Lee et al Mn http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22595 MT-131 2011-XX-XX north_america canada village_a genbank Lee et al Mj-V.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22596 MT-1336 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22597 MT-1345 2011-XX-XX north_america canada village_c genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22598 MT-1393 2008-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22599 MT-140 2009-XX-XX north_america canada village_c genbank Lee et al Mj-IV.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22600 MT-1403 2009-XX-XX north_america canada village_e genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22601 MT-1466 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22602 MT-1499 2011-XX-XX north_america canada village_c genbank Lee et al Mj-IV.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22603 MT-1549 2008-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22604 MT-1605 2008-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22605 MT-1684 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22606 MT-1799 2011-XX-XX north_america canada village_d genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22607 MT-1838 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22608 MT-1971 2011-XX-XX north_america canada village_c genbank Lee et al Mj-IV.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22609 MT-2151 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22610 MT-2174 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22611 MT-2175 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22612 MT-2178 2011-XX-XX north_america canada village_a genbank Lee et al Mj-V.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22613 MT-2184 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22614 MT-2224 2008-XX-XX north_america canada village_e genbank Lee et al Mj-IV.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22615 MT-2356 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22616 MT-2465 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22617 MT-2473 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22618 MT-2474 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22619 MT-2538 2011-XX-XX north_america canada village_c genbank Lee et al Mj-V.d http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22620 MT-2665 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22621 MT-2667 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22622 MT-2706 2010-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22623 MT-2720 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22624 MT-2762 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22625 MT-2768 2009-XX-XX north_america canada village_e genbank Lee et al Mj-IV.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22626 MT-2769 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22627 MT-2771 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22628 MT-2792 2006-XX-XX north_america canada village_c genbank Lee et al Mj-V.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22629 MT-2800 2010-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22631 MT-289 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22632 MT-2905 2006-XX-XX north_america canada village_c genbank Lee et al Mj-V.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22633 MT-2910 2006-XX-XX north_america canada village_c genbank Lee et al Mj-V.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22634 MT-2931 2006-XX-XX north_america canada village_c genbank Lee et al Mj-V.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22635 MT-3000 2009-XX-XX north_america canada village_c genbank Lee et al Mj-V.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22636 MT-3004 2009-XX-XX north_america canada village_c genbank Lee et al Mj-V.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22637 MT-3074 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22638 MT-3173 2009-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22639 MT-3194 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22640 MT-3239 2006-XX-XX north_america canada other_village genbank Lee et al Mj-V.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22641 MT-3255 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22642 MT-3271 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22643 MT-3281 2010-XX-XX north_america canada village_a genbank Lee et al Mj-V.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22644 MT-3296 2011-XX-XX north_america canada village_c genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22645 MT-3341 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22648 MT-3673 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22649 MT-3683 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22651 MT-3787 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22652 MT-389 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22653 MT-393 2009-XX-XX north_america canada village_c genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22729 MT-398 2005-XX-XX north_america canada other_village genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22654 MT-405 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22655 MT-4067 2007-XX-XX north_america canada village_d genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22656 MT-4137 2010-XX-XX north_america canada village_c genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22667 MT-4166 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22730 MT-4230 2010-XX-XX north_america canada village_a genbank Lee et al Mj-V.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22657 MT-441 2011-XX-XX north_america canada village_c genbank Lee et al Mj-IV.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22731 MT-4466 2011-XX-XX north_america canada village_d genbank Lee et al Mj-IV.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22658 MT-452 2011-XX-XX north_america canada village_c genbank Lee et al Mj-IV.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22659 MT-467 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22660 MT-4683 2011-XX-XX north_america canada village_d genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22661 MT-4846 2011-XX-XX north_america canada village_a genbank Lee et al Mj-V.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22662 MT-4854 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22663 MT-4884 2011-XX-XX north_america canada village_c genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22664 MT-4942 2007-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22665 MT-504 2011-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22565 MT-5195 2007-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22566 MT-5337 2007-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22567 MT-5373 2009-XX-XX north_america canada other_village genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22568 MT-5383 2007-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22569 MT-5447 2011-XX-XX north_america canada village_a genbank Lee et al Mj-V.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22732 MT-5488 2007-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22570 MT-5531 2011-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22571 MT-5543 2007-XX-XX north_america canada village_k genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22572 MT-567 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22733 MT-578 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22573 MT-5870 2009-XX-XX north_america canada other_village genbank Lee et al Mj-IV.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22574 MT-5983 2011-XX-XX north_america canada village_k genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22575 MT-6084 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22576 MT-6205 2011-XX-XX north_america canada village_a genbank Lee et al Mj-V.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22577 MT-6218 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22578 MT-6226 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22579 MT-6429 2012-XX-XX north_america canada village_k genbank Lee et al Mj-III.b http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22580 MT-661 2009-XX-XX north_america canada village_c genbank Lee et al Mj-IV.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22581 MT-692 2009-XX-XX north_america canada village_c genbank Lee et al Mj-IV.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22583 MT-721 2008-XX-XX north_america canada village_a genbank Lee et al Mj-III.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22584 MT-751 2008-XX-XX north_america canada village_b genbank Lee et al Mj-V.a http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22585 MT-853 2011-XX-XX north_america canada village_c genbank Lee et al Mj-IV.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22586 MT-877 2010-XX-XX north_america canada other_village genbank Lee et al Mj-IV.c http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22650 None1 20XX-XX-XX north_america canada ? genbank Lee et al http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit +G22724 None2 20XX-XX-XX north_america canada ? genbank Lee et al http://www.pnas.org/content/112/44/13609 Population Genomics of Mycobacterium tuberculosis in the Inuit From e40243c5e4a0df04a244de5ec0ca355cf037a3f4 Mon Sep 17 00:00:00 2001 From: John Huddleston Date: Sat, 20 Feb 2021 16:12:25 -0800 Subject: [PATCH 05/11] Track the number of strains with sequences and no metadata Report the number of strains that had sequences but did not have any metadata. --- augur/filter.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/augur/filter.py b/augur/filter.py index 2634448ff..bb5030f61 100644 --- a/augur/filter.py +++ b/augur/filter.py @@ -194,6 +194,9 @@ def run(args): strains_with_sequences = [seq for seq in seq_keep if seq in vcf_sequences] num_excluded_by_lack_of_sequences = len(seq_keep) - len(strains_with_sequences) seq_keep = strains_with_sequences + + # Also track the number of sequences without metadata. + num_sequences_without_metadata = len([seq for seq in vcf_sequences if seq not in all_seq]) elif args.sequences or args.sequence_index: # If FASTA, try to load the sequence composition details and strain # names to be filtered. @@ -232,8 +235,12 @@ def run(args): strains_with_sequences = [seq for seq in seq_keep if seq in sequence_index["strain"].values] num_excluded_by_lack_of_sequences = len(seq_keep) - len(strains_with_sequences) seq_keep = strains_with_sequences + + # Also track the number of sequences without metadata. + num_sequences_without_metadata = len([seq for seq in sequence_index["strain"].values if seq not in all_seq]) else: - num_excluded_by_lack_of_sequences = 0 + num_excluded_by_lack_of_sequences = None + num_sequences_without_metadata = None ##################################### #Filtering steps @@ -537,7 +544,12 @@ def run(args): sequences_written = SeqIO.write(sequences_to_write, args.output, 'fasta') print("\n%i sequences were dropped during filtering" % (len(all_seq) - len(seq_keep),)) - print("\t%i were excluded because they had no sequence data" % (num_excluded_by_lack_of_sequences,)) + + if num_excluded_by_lack_of_sequences: + print("\t%i were excluded because they had no sequence data" % (num_excluded_by_lack_of_sequences,)) + + if num_sequences_without_metadata: + print("\t%i sequences were excluded because they did not have metadata" % (num_sequences_without_metadata,)) if args.exclude: print("\t%i of these were dropped because they were in %s" % (num_excluded_by_name, args.exclude)) From 7b704f65e303f9720286c0ddd4256903ee6edcb1 Mon Sep 17 00:00:00 2001 From: John Huddleston Date: Mon, 22 Feb 2021 11:22:41 -0800 Subject: [PATCH 06/11] Add tests and logic for inline comments in strain lists Previously, augur filter treated comments differently for `include` and `exclude` files. This commit consistently allows the more permissive commenting associated with the `exclude` files such that users can make inline comments on the same line as a strain name. This commit also adds tests to confirm that we get the expected behavior from the current code. This change should be backwards compatible with existing `include` inputs, since the new comment standard is a superset of the older `include` format. --- augur/utils.py | 14 ++++++++++++-- tests/test_utils.py | 2 +- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/augur/utils.py b/augur/utils.py index 62361c9bb..b68c484e3 100644 --- a/augur/utils.py +++ b/augur/utils.py @@ -692,6 +692,14 @@ def read_strains(*files, comment_char="#"): """Reads strain names from one or more plain text files and returns the set of distinct strains. + Strain names can be commented with full-line or inline comments. For + example, the following is a valid strain names file: + + # this is a comment at the top of the file + strain1 # exclude strain1 because it isn't sequenced properly + strain2 + # this is an empty line that will be ignored. + Parameters ---------- files : one or more str @@ -707,7 +715,9 @@ def read_strains(*files, comment_char="#"): for input_file in files: with open(input_file, 'r', encoding='utf-8') as ifile: for line in ifile: - if line[0] != comment_char and len(line.strip()) > 0: - strains.add(line.strip()) + # Allow comments anywhere in a given line. + strain_name = line.split(comment_char)[0].strip() + if len(strain_name) > 0: + strains.add(strain_name) return strains diff --git a/tests/test_utils.py b/tests/test_utils.py index 2be92864e..a7d439804 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -135,7 +135,7 @@ def test_read_strains(self, tmpdir): # Write one list of filenames with some unnecessary whitespace. strains1 = Path(tmpdir) / Path("strains1.txt") with open(strains1, "w") as oh: - oh.write("strain1\nstrain2\n \n") + oh.write("strain1 # this is an inline comment about strain 1\nstrain2\n # this is a comment preceded by whitespace.\n") # Write another list of filenames with a comment. strains2 = Path(tmpdir) / Path("strains2.txt") From 13dcd38c3a7fb8dda8a2915da25c5d82ac8d2c3b Mon Sep 17 00:00:00 2001 From: John Huddleston Date: Thu, 25 Feb 2021 13:00:06 -0800 Subject: [PATCH 07/11] Fix strain accounting in filter reports Fixes inconsistencies in numbers from filter reports associated with edge cases where strains are missing metadata or sequence data. Specific changes include: - calculate the intersection of strains with metadata and sequences (whenever sequences are provided) as the "source of truth" - track _strains_ as opposed to _sequences_ through sets instead of lists (enabling clear logic and testing of group membership) - report about strains dropped from either lack of metadata or sequence data - report how many strains could or could not be included from the include file inputs to clarify when requested strains do not have metadata or sequence data This commit also updates functional tests for augur filter to include a more complex example of how these filter behaviors should manifest, based on an excellent example from @jameshadfield. --- augur/filter.py | 181 +++++++++++---------- tests/functional/filter.t | 38 ++++- tests/functional/filter/metadata.tsv | 1 - tests/functional/filter/sequence_index.tsv | 1 - tests/functional/filter/sequences.fasta | 174 -------------------- 5 files changed, 129 insertions(+), 266 deletions(-) diff --git a/augur/filter.py b/augur/filter.py index bb5030f61..62651c9f5 100644 --- a/augur/filter.py +++ b/augur/filter.py @@ -160,8 +160,7 @@ def run(args): # Metadata are the source of truth for which sequences we want to keep # in filtered output. meta_dict, meta_columns = read_metadata(args.metadata) - seq_keep = sorted(meta_dict.keys()) - all_seq = seq_keep.copy() + metadata_strains = set(meta_dict.keys()) except ValueError as error: print("ERROR: Problem reading in {}:".format(args.metadata)) print(error) @@ -184,19 +183,12 @@ def run(args): "Please see the augur install instructions to install it.") return 1 - ####Read in files + # Read in files - #If VCF, open and get sequence names + # If VCF, open and get sequence names if is_vcf: vcf_sequences, _ = read_vcf(args.sequences) - - # Intersect sequence strain names with metadata strains. - strains_with_sequences = [seq for seq in seq_keep if seq in vcf_sequences] - num_excluded_by_lack_of_sequences = len(seq_keep) - len(strains_with_sequences) - seq_keep = strains_with_sequences - - # Also track the number of sequences without metadata. - num_sequences_without_metadata = len([seq for seq in vcf_sequences if seq not in all_seq]) + sequence_strains = set(vcf_sequences) elif args.sequences or args.sequence_index: # If FASTA, try to load the sequence composition details and strain # names to be filtered. @@ -230,17 +222,30 @@ def run(args): # Calculate summary statistics needed for filtering. sequence_index["ACGT"] = sequence_index.loc[:, ["A", "C", "G", "T"]].sum(axis=1) + sequence_strains = set(sequence_index["strain"].values) + else: + sequence_strains = None - # Intersect sequence strain names with metadata strains. - strains_with_sequences = [seq for seq in seq_keep if seq in sequence_index["strain"].values] - num_excluded_by_lack_of_sequences = len(seq_keep) - len(strains_with_sequences) - seq_keep = strains_with_sequences + if sequence_strains is not None: + # Calculate the number of strains that don't exist in either metadata or sequences. + num_excluded_by_lack_of_metadata = len(sequence_strains - metadata_strains) + num_excluded_by_lack_of_sequences = len(metadata_strains - sequence_strains) - # Also track the number of sequences without metadata. - num_sequences_without_metadata = len([seq for seq in sequence_index["strain"].values if seq not in all_seq]) + # Intersect sequence strain names with metadata strains. + all_strains = metadata_strains | sequence_strains + available_strains = metadata_strains & sequence_strains else: + num_excluded_by_lack_of_metadata = None num_excluded_by_lack_of_sequences = None - num_sequences_without_metadata = None + + # When no sequence data are available, we treat the metadata as the + # source of truth. + all_strains = metadata_strains + available_strains = metadata_strains + + # Track the strains that are available to select by the filters below, after + # accounting for availability of metadata and sequences. + seq_keep = available_strains.copy() ##################################### #Filtering steps @@ -248,16 +253,7 @@ def run(args): # Exclude all strains by default. if args.exclude_all: - seq_keep = [] - - # remove sequences without meta data - tmp = [ ] - for seq_name in seq_keep: - if seq_name in meta_dict: - tmp.append(seq_name) - else: - print("No meta data for %s, excluding from all further analysis."%seq_name) - seq_keep = tmp + seq_keep = set() # remove strains explicitly excluded by name # read list of strains to exclude from file and prune seq_keep @@ -265,9 +261,8 @@ def run(args): if args.exclude: try: to_exclude = read_strains(*args.exclude) - tmp = [seq_name for seq_name in seq_keep if seq_name not in to_exclude] - num_excluded_by_name = len(seq_keep) - len(tmp) - seq_keep = tmp + num_excluded_by_name = len(seq_keep & to_exclude) + seq_keep = seq_keep - to_exclude except FileNotFoundError as e: print("ERROR: Could not open file of excluded strains '%s'" % args.exclude, file=sys.stderr) sys.exit(1) @@ -290,15 +285,15 @@ def run(args): else: # i.e. property=value requested if meta_dict[seq_name].get(col,'unknown').lower() == val.lower(): to_exclude.add(seq_name) - tmp = [seq_name for seq_name in seq_keep if seq_name not in to_exclude] - num_excluded_by_metadata[ex] = len(seq_keep) - len(tmp) - seq_keep = tmp + + num_excluded_by_metadata[ex] = len(seq_keep & to_exclude) + seq_keep = seq_keep - to_exclude # exclude strains by metadata, using Pandas querying num_excluded_by_query = 0 if args.query: - filtered = filter_by_query(seq_keep, args.metadata, args.query) - num_excluded_by_query = len(seq_keep) - len(filtered) + filtered = set(filter_by_query(list(seq_keep), args.metadata, args.query)) + num_excluded_by_query = len(seq_keep - filtered) seq_keep = filtered # filter by sequence length @@ -310,9 +305,11 @@ def run(args): is_in_seq_keep = sequence_index["strain"].isin(seq_keep) is_gte_min_length = sequence_index["ACGT"] >= args.min_length - seq_keep_by_length = sequence_index[ - (is_in_seq_keep) & (is_gte_min_length) - ]["strain"].tolist() + seq_keep_by_length = set( + sequence_index[ + (is_in_seq_keep) & (is_gte_min_length) + ]["strain"].tolist() + ) num_excluded_by_length = len(seq_keep) - len(seq_keep_by_length) seq_keep = seq_keep_by_length @@ -320,10 +317,10 @@ def run(args): # filter by ambiguous dates num_excluded_by_ambiguous_date = 0 if args.exclude_ambiguous_dates_by and 'date' in meta_columns: - seq_keep_by_date = [] + seq_keep_by_date = set() for seq_name in seq_keep: if not is_date_ambiguous(meta_dict[seq_name]['date'], args.exclude_ambiguous_dates_by): - seq_keep_by_date.append(seq_name) + seq_keep_by_date.add(seq_name) num_excluded_by_ambiguous_date = len(seq_keep) - len(seq_keep_by_date) seq_keep = seq_keep_by_date @@ -332,11 +329,11 @@ def run(args): num_excluded_by_date = 0 if (args.min_date or args.max_date) and 'date' in meta_columns: dates = get_numerical_dates(meta_dict, fmt="%Y-%m-%d") - tmp = [s for s in seq_keep if dates[s] is not None] + tmp = {s for s in seq_keep if dates[s] is not None} if args.min_date: - tmp = [s for s in tmp if (np.isscalar(dates[s]) or all(dates[s])) and np.max(dates[s])>args.min_date] + tmp = {s for s in tmp if (np.isscalar(dates[s]) or all(dates[s])) and np.max(dates[s])>args.min_date} if args.max_date: - tmp = [s for s in tmp if (np.isscalar(dates[s]) or all(dates[s])) and np.min(dates[s]) --subsample-seed 314159 \ > --no-probabilistic-sampling \ > --output "$TMP/filtered.fasta" - ERROR: Asked to provide at most 5 sequences, but there are 10 groups. + ERROR: Asked to provide at most 5 sequences, but there are 8 groups. [1] $ rm -f "$TMP/filtered.fasta" @@ -73,10 +73,10 @@ Filter using only metadata without sequence input or output and save results as > --min-length 10500 \ > --output-metadata "$TMP/filtered_metadata.tsv" > /dev/null -Output should include the 9 sequences matching the filters and a header line. +Output should include the 8 sequences matching the filters and a header line. $ wc -l "$TMP/filtered_metadata.tsv" - \s*10 .* (re) + \s*9 .* (re) $ rm -f "$TMP/filtered_metadata.tsv" Filter using only metadata and save results as a list of filtered strains. @@ -88,10 +88,10 @@ Filter using only metadata and save results as a list of filtered strains. > --min-length 10500 \ > --output-strains "$TMP/filtered_strains.txt" > /dev/null -Output should include only the 9 sequences matching the filters (without a header line). +Output should include only the 8 sequences matching the filters (without a header line). $ wc -l "$TMP/filtered_strains.txt" - \s*9 .* (re) + \s*8 .* (re) $ rm -f "$TMP/filtered_strains.txt" Filter using only metadata without a sequence index. @@ -174,7 +174,7 @@ Alternately, exclude only the sequences from Brazil and Colombia (12 - 4 strains > --exclude "$TMP/filtered_strains.brazil.txt" "$TMP/filtered_strains.colombia.txt" \ > --output "$TMP/filtered.fasta" > /dev/null $ grep "^>" "$TMP/filtered.fasta" | wc -l - \s*8 (re) + \s*6 (re) $ rm -f "$TMP/filtered.fasta" Try to filter with sequences that don't match any of the metadata. @@ -222,3 +222,29 @@ Filter TB strains from VCF and save as a list of filtered strains. $ wc -l "$TMP/filtered_strains.txt" \s*3 .* (re) $ rm -f "$TMP/filtered_strains.txt" + +Confirm that filtering omits strains without metadata or sequences. +The input sequences are missing one strain that is in the metadata. +The metadata are missing one strain that has a sequence. +The list of strains to include has one strain with no metadata/sequence and one strain with information that would have been filtered by country. +The query initially filters 3 strains from Colombia, one of which is added back by the include. + + $ echo "NotReal" > "$TMP/include.txt" + $ echo "COL/FLR_00008/2015" >> "$TMP/include.txt" + $ ${AUGUR} filter \ + > --sequence-index filter/sequence_index.tsv \ + > --metadata filter/metadata.tsv \ + > --query "country != 'Colombia'" \ + > --include "$TMP/include.txt" \ + > --output-strains "$TMP/filtered_strains.txt" + 4 strains were dropped during filtering + \t1 had no sequence data (esc) + \t1 had no metadata (esc) + \t3 of these were filtered out by the query: (esc) + \t\t"country != 'Colombia'" (esc) + (esc) + \t1 strains were added back because they were requested by include files (esc) + \t1 strains from include files were not added because they lacked sequence or metadata (esc) + 8 strains passed all filters + + $ rm -f "$TMP/filtered_strains.txt" diff --git a/tests/functional/filter/metadata.tsv b/tests/functional/filter/metadata.tsv index 319d519b6..dc66a193c 100644 --- a/tests/functional/filter/metadata.tsv +++ b/tests/functional/filter/metadata.tsv @@ -1,5 +1,4 @@ strain virus accession date region country division city db segment authors url title journal paper_url -PAN/CDC_259359_V1_V3/2015 zika KX156774 2015-12-18 North America Panama Panama Panama genbank genome Shabman et al https://www.ncbi.nlm.nih.gov/nuccore/KX156774 Direct Submission Submitted (29-APR-2016) J. Craig Venter Institute, 9704 Medical Center Drive, Rockville, MD 20850, USA https://www.ncbi.nlm.nih.gov/pubmed/ COL/FLR_00024/2015 zika MF574569 2015-12-XX South America Colombia Colombia Colombia genbank genome Pickett et al https://www.ncbi.nlm.nih.gov/nuccore/MF574569 Direct Submission Submitted (28-JUL-2017) J. Craig Venter Institute, 9704 Medical Center Drive, Rockville, MD 20850, USA https://www.ncbi.nlm.nih.gov/pubmed/ PRVABC59 zika KU501215 2015-12-XX North America Puerto Rico Puerto Rico Puerto Rico genbank genome Lanciotti et al https://www.ncbi.nlm.nih.gov/nuccore/KU501215 Phylogeny of Zika Virus in Western Hemisphere, 2015 Emerging Infect. Dis. 22 (5), 933-935 (2016) https://www.ncbi.nlm.nih.gov/pubmed/27088323 COL/FLR_00008/2015 zika MF574562 2015-12-XX South America Colombia Colombia Colombia genbank genome Pickett et al https://www.ncbi.nlm.nih.gov/nuccore/MF574562 Direct Submission Submitted (28-JUL-2017) J. Craig Venter Institute, 9704 Medical Center Drive, Rockville, MD 20850, USA https://www.ncbi.nlm.nih.gov/pubmed/ diff --git a/tests/functional/filter/sequence_index.tsv b/tests/functional/filter/sequence_index.tsv index 9ead2af42..16dafa0bd 100644 --- a/tests/functional/filter/sequence_index.tsv +++ b/tests/functional/filter/sequence_index.tsv @@ -10,4 +10,3 @@ DOM/2016/BB_0059 10035 2563 2089 2741 2015 621 6 0 0 0 BRA/2016/FC_6706 10366 2747 2203 2915 2165 329 7 0 0 0 DOM/2016/BB_0183 10621 2910 2343 3099 2269 0 0 0 0 0 EcEs062_16 10812 2960 2388 3158 2306 0 0 0 0 0 -HND/2016/HU_ME59 10365 2842 2271 3016 2233 0 3 0 0 0 diff --git a/tests/functional/filter/sequences.fasta b/tests/functional/filter/sequences.fasta index 3e37aa57f..8149494fc 100644 --- a/tests/functional/filter/sequences.fasta +++ b/tests/functional/filter/sequences.fasta @@ -1962,177 +1962,3 @@ ggcctgaactggagatcagctgtggatctccagaagagggactagtggttagaggagacc ccccggaaaacgcaaaacagcatattgacgctgggaaagaccagagactccatgagtttc caccacgctggccgccaggcacagatcgccgaatagcggcggccggtgtggggaaatcca tgggagatcgga ->HND/2016/HU_ME59 -gtttgaagcgaaagctagcaacagtatcaacaggttttattttggatttggaaacgagag -tttctggtcatgaaaaacccaaaaaagaaatccggaggattccggattgtcaatatgcta -aaacgcggagtagcccgtgtgagcccctttgggggcttgaagaggctgccagccggactt -ctgctgggtcatgggcccatcaggatggtcttggcgattctagcctttttgagattcacg -gcaatcaagccatcactgggtctcatcaatagatggggttcagtggggaaaaaagaggct -atggaaataataaagaagttcaagaaagatctggctgccatgctgagaataatcaatgct -aggaaggagaagaagagacgaggcgcagatactagtgtcggaattgttggcctcctgctg -accacagctatggcagcggaggtcactagacgtgggagtgcatactatatgtacttggac -agaaacgatgctggggaggccatatcttttccaaccacattggggatgaataagtgttat -atacagatcatggatcttggacacatgtgtgatgccaccatgagctatgaatgccctatg -ctggatgagggggtggaaccagatgacgtcgattgttggtgcaacacgacgtcaacttgg -gttgtgtacggaacctgccatcacaaaaaaggtgaagcacggagatctagaagagctgtg -acgctcccctcccattccactaggaagctgcaaacgcggtcgcaaacctggttggaatca -agagaatacacaaagcacttgattagagtcgaaaattggatattcaggaaccctggcttc -gcgttagcagcagctgccatcgcttggcttttgggaagctcaacgagccaaaaagtcata -tacttggtcatgatactgctgattgccccggcatacagcatcaggtgcataggagtcagc -aatagggactttgtggaaggtatgtcaggtgggacttgggttgatgttgtcttggaacat -ggaggttgtgtcaccgtaatggcacaggacaaaccgactgtcgacatagagctggttaca -acaacagtcagcaacatggcggaggtaagatcctactgctatgaggcatcaatatcagac -atggcttcggacagccgctgcccaacacaaggtgaagcctaccttgacaagcaatcagac -actcaataygtctgcaaaagaacgttagtggacagaggctggggaaatggatgtggactt -tttggcaaagggagcctggtgacatgcgctaagtttgcatgctccaagaaaatgaccggg -aagagcatccagccagagaatctggagtaccggataatgctgtcagttcatggctcccag -cacagtgggatgatcgttaatgacacaggacatgaaactgatgagaatagagcgaaggtt -gagataacgcccawttcaccaagagccgaagccaccctggggggttttggaagcctagga -cttgattgtgaaccgaggacaggccttgacttttcagatttgtattacttgactatgaat -aacaagcactggttggttcacaaggagtggttccacgacattccattaccttggcacgct -ggggcagacaccggaactccacactggaacaacaaagaagcactggtagagttcaaggac -gcacatgccaaaaggcaaactgtcgtggttctagggagtcaagaaggagcagttcacacg -gcccttgctggagctctggaggctgagatggatggtgcaaagggaaggctgtcctctggc -cacttgaaatgtcgcctgaaaatggataaacttagattgaagggcgtgtcatactccttg -tgtaccgcagcgttcacattcaccaagatcccggctgaaacactgcacgggacagtcaca -gtggaggtacagtacgcagggacagatggaccttgcaaggttccagctcagatggcggtg -gacatgcaaactctgaccccagttgggaggttgataaccgctaaccccgtaatcactgaa -agcactgagaactctaagatgatgctggaacttgatccaccatttggggactcttacatt -gtcataggagtcggggagaagaagatcacccaccactggcacaggagtggcagcaccatt -ggaaaagcatttgaagccactgtgagaggtgccaagagaatggcagtcttgggagacaca -gcctgggactttggatcagttggaggcgctctcaactcattgggcaagggcatccatcaa -atttttggagcagctttcaaatcattgtttggaggaatgtcctggttctcacaaattctc -attggaacgttgctgatgtggttgggtctgaacacaaagaatggatctatttcccttatg -tgcttggccttagggggagtgttgatcttcttatccacagccgtctctgctgatgtgggg -tgctcggtggacttctcaaagaaggagacgagatgcggtacaggggtgttcgtctataac -gacgttgaagcctggagggacaggtacaagtaccatcctgactccccccgtagattggca -gcagcagtcaagcaagcctgggaagatggtatctgcgggatctcctctgtttcaagaatg -gaaaacatcatgtggagatcagtagaaggggagctcaacgcaatcctggaagagaatgga -gttcaactgacggtcgttgtgggatctgtaaaaaaccccatgtggagagctccacagaga -ttgcccgtgcctgtgaacgagctgccccacggctggaaggcttgggggaaatcgtacttc -gtcagagcagcaaagacaaataacagctttgtcgtggatggtgacacactgaaggaatgc -ccactcaaacatagagcatggaacagctttcttgtggaggatcatgggttcggggtattt -cacactagtgtctggctcaaggttagagaagattattcattagagtgtgatccagccgtt -attggaacagctgttaagggaaaggaggctgtacacagtgatctaggctactggattgag -agtgagaagaatgacacatggaggctgaagagggcccatctgatcgagatgaaaacatgt -gaatggccaaagtcccacacattgtggacagatggaatagaagagagtgatctgatcata -cccaagtctttagctgggccactcagccatcacaataccagagagggctacaggacccaa -atgaaagggccatggcacagtgaagagcttgaaattcggtttgaggaatgcccaggcact -aaggtccacgtggaggaaacatgtggaacaagaggaccatctctgagatcaaccactgca -agcggaagggtgatcgaggaatggtgctgcagggagtgcacaatgcccccactgtcgttc -cgggctaaagatggctgttggtatggaatggagataaggcccaggaaagaaccagaaagc -aacttagtaaggtcaatggtgactgcaggatcaactgatcacatggatcacttctccctt -ggagtgcttgtgattctgctcatggtgcaggaagggctaaagaagagaatgaccacaaag -atcatcataagcacatcaatggcagtgctggtagctatgatcctgggaggattttcaatg -agtgacctggctaagcttgcaattttgatgggtgccaccttcgcggaaatgaacactgga -ggagatgtagctcatctggcgctgatagcggcattcaaagtcagaccagcgttgctggta -tctttcatcttcagagctaattggacaccccgtgaaagcatgctactggccttggcctcg -tgtcttttgcaaactgcgatctccgccttggaaggcgacctgatggttctcatcaatggt -tttgctttggcctggttggcaatacgagcgatggttgttccacgcactgataacatcacc -ttggcaatcctggctgctctgacaccactggcccggggcacactgcttgtggcgtggaga -gcaggccttgctacttgcggggggtttatgctcctctctctgaagggaaaaggcagtgtg -aagaagaacttaccatttgtcatggccctgggactaaccgctgtgaggctggtcgacccc -atcaacgtggtgggactgctgttgctcacaaggagtgggaagcggagctggccccctagc -gaagtactcacagctgttggcctgatatgcgcattggctggagggttcgccaaggcagat -atagagatggctgggcccatggccgcggtcggtctgctaattgtcagttacgtggtctca -ggaaagagtgtggacatgtacattgaaagagcaggtgacatcacatgggaaaaagatgcg -gaagtcactggaaacagtccccggctcgatgtggcgctagatgagagtggtgatttctcc -ctggtggaggatgacggtccccccatgagagagatcatactcaaggtggtcctgatgacc -atctgtggcatgaacccaatagccataccctttgcagctggagcgtggtacgtatacgtg -aagactggaaaaaggagtggtgctctatgggatgtgcctgctcccaaggaagtaaaaaag -ggggagaccacagatggagtgtacagagtaatgactcgtagactgctaggttcaacacaa -gttggagtgggagtcatgcaagagggggtctttcacactatgtggcacgtcacaaaagga -tccgcactgagaagcggtgaagggagacttgatccatactggggagatgtcaagcaggat -ctggtgtcatactgtggtccatggaagctagatgccgcctgggacgggcacagcgaggtg -cagctcctggccgtgccccccggagagagagcgaggaacatccagactctgcccggaata -tttaagacaaaggatggggacattggagcggttgcgctggattacccagcaggaacttca -ggatctccaatcctagacaagtgtgggagagtgataggactttatggcaatggggtcgtg -atcaaaaatgggagttatgttagtgccatcacccaagggaggagggaggaagagactcct -gttgagtgcttcgagccttcgatgctgaagaagaagcagctaactgtcttagacttacat -cctggagctgggaaaaccaggagagttcttcctgaaatagtccgtgaagccataaaaaca -agactccgtactgtgatcttagctccaaccagggttgtcgctgctgaaatggaggaggcc -cttagagggcttccagtgcgttatatgacaacagcagtcaatgtcacccactctggaaca -gaaatcgtcgacttaatgtgccatgccaccttcacttcacgtctactacagccaatcaga -gtccccaactataatctgtatattatggatgaggcccacttcacagatccctcaagtata -gcagcaagaggatacatttcaacaagggttgagatgggcgaggcggctgccatcttcatg -accgccacgccaccaggaacccgtgacgcatttccggactccaactcaccaattatggac -accgaagtggaagtcccagagagagcctggagctcaggctttgattgggtgacggatcat -tctggaaaaacagtttggtttgttccaagcgtgaggaacggcaatgagatcgcagcttgt -ctgacaaaggctggaaaacgggtcatacagctcagcagaaagacttttgagacagagttc -cagaaaacaaaacatcaagagtgggactttgtcgtgacaactgacatttcagagatgggc -gccaactttaaagctgaccgtgtcatagattccaggagrtgcctaaagccggtcatactt -gatggcgagagagtcattctggctggacccatgcctgtcacacatgccagcgctgcccag -aggagggggcgcataggcaggaatcccaacaaacctggagatgagtatctgtatggaggt -gggtgcgcagagactgacgaagaccatgcacactggcttgaagcaagaatgctccttgac -aatatttacctccaagatggcctcatagcctcgctctatcgacctgaggccgacaaagta -gcagccattgagggagagttcaagcttaggacggagcaaaggaagacctttgtggaactc -atgaaaagaggagatcttcctgtttggctggcctatcaggttgcatctgccggaataacc -tacacagatagaagatggtgctttgatggcacgaccaacaacaccatactggaagacagt -gtgccggcagaggtgtggaccagacacggagagaaaagagtgctcaaaccgaggtggatg -gacgccagagtttgttcagatcatgcggccctgaagtcattcaaggagtttgccgctggg -aaaagaggagcggcttttggagtgatggaagccctgggaacactgccaggacacatgaca -gagagattccaggaagccattgacaacctcgctgtgctcatgcgggcagagactggaagc -aggccttacaaagccgcggcggcccaattgccggagaccctagagaccattatgcttttg -gggttgctgggaacagtctcgctgggaatctttttcgtcttgatgaggaacaagggcata -gggaagatgggctttggaatggtgacccttggggccagtgcatggctcatgtggctctcg -gaaattgagccagccagaattgcatgtgtcctcattgttgtgttcctattgctggtggtg -ctcatacctgagccagaaaagcaaagatctccccaggacaaccaaatggcaatcatcatc -atggtagcagtaggtcttctgggcttgattaccgccaatgaactcggatggttggagaga -acaaagagtgacctaagccatctgatgggaaggagagaggagggggcaaccataggattc -tcaatggacattgacctgcggccagcctcagcttgggccatctatgctgccttgacaact -ttcattaccccagccgtccaacatgcagtgaccacttcatacaacaactactccttaatg -gcgatggccacgcaagctggagtgttgtttggtatgggcaaagggatgccattctacgca -tgggactttggagtcccgctgctaatgataggttgctactcacaattaacacccctgacc -ctaatagtggccatcattttgctcgtggcgcactacatgtacttgatcccagggctgcag -gcagcagctgcgcgtgctgcccagaagagaacggcagctggcatcatgaagaaccctgtt -gtggatggaatagtggtgactgacattgacacaatgacaattgacccccaagtggagaaa -aagatgggacaggtgctactcatagcagtagccgtctccagcgccatactgtcgcggacc -gcctgggggtggggggaggctggggccctgatcacagccgcaacttccactttgtgggaa -ggctctccgaacaagtactggaactcctctacagccacttcactgtgtaacatttttagg -ggaagttacttggctggagcttctctaatctacacagtaacaagaaacgctggcttggtc -aagagacgtgggggtggaacaggagagaccctgggagagaaatggaaggcccgcttgaac -cagatgtcggccctggagttctactcctacaaaaagtcaggcatcaccgaggtgtgcaga -gaagaggcccgccgcgccctcaaggacggtgtggcaacgggaggccatgctgtgtcccga -ggaagtgcaaagctgagatggttggtggagcggggatacctgcagccctatggaaaggtc -attgatcttggatgtggcagagggggctggagttactacgccgccaccatccgcaaagtt -caagaagtgaaaggatacacaaaaggaggccctggtcatgaagaacccgtgttggtgcaa -agctatgggtggaacatagtccgtcttaagagtggggtggacgtctttcatatggcggct -gagccgtgtgacacgttgctgtgtgacataggtgagtcatcatctagtcctgaagtggaa -gaagcacggacgctcagagtcctctccatggtgggggattggcttgaaaaaagaccagga -gccttttgtataaaagtgttgtgcccatacaccagcactatgatggaaaccctggagcga -ctgcagcgtaggtatgggggaggactggtcagagtgccactctcccgcaactctacacat -gagatgtactgggtctctggagcgaaaagcaacaccataaaaagtgtgtccaccacgagc -cagctcctcttggggcgcatggacgggcctaggaggccagtgaaatatgaggaggatgtg -aatctcggctctggcacgcgggctgtggtaagctgcgctgaagctcccaacatgaagatc -attggtaaccgcattgaaaggatccgcagtgagcacgcggaaacgtggttctttgacgag -aaccacccatataggacatgggcttaccatggaagctatgaggcccccacacaagggtca -gcgtcctctctaataaacggggttgtcaggctcctgtcaaaaccctgggatgtggtgact -ggagtcacaggaatagccatgaccgacaccacaccgtatggtcagcaaagagttttcaag -gaaaaagtggacactagggtgccagacccccaagaaggcactcgtcaggttatgagcatg -gtctcttcctggttgtggaaagagctaggcaaacacaaacggccacgagtctgtaccaaa -gaagagttcatcaacaaggttcgtagcaatgcagcattaggggcaatatttgaagaggaa -aaagagtggaagactgcagtggaagctgtgaacgatccaaggttctgggctctagtggac -aaggaaagagagcaccacctgagaggagagtgccagagttgtgtgtacaacatgatggga -aaaagagaaaagaaacaaggggaatttggaaaggccaagggcagccgcgccatctggtat -atgtggctaggggctagatttctagagttcgaagcccttggattcttgaacgaggatcac -tggatggggagagagaactcaggaggtggtgttgaagggctgggattacaaagactcgga -tatgtcctagaagagatgagttgcataccaggaggaaggatgtatgcagatgacactgct -ggctgggacacccgcatcagcaggtttgatctggagaatgaagctctaatcaccaaccaa -atggagaaagggcacagggccttggcattggccataatcaagtacacataccaaaacaaa -gtggtaaaggtccttagaccagctgaaaaagggaaaacagttatggacattatttcgaga -caagaccaaagggggagcggacaagttgtcacttacgctcttaacacatttaccaaccta -gtggtgcaactcatccggaatatggaggctgaggaagttctagagatgcaagacttgtgg -ctgctgcggaggtcagagaaagtgaccaactggttgcagagcaacggatgggataggctc -aaacgaatggcagtcagtggagatgattgcgttgtgaagccaattgatgataggtttgca -catgccctcaggttcttgaatgatatgggaaaagttaggaaggacacacaagagtggaaa -ccctcaactggatgggacaactgggaagaagttccgttttgctcccaccacttcaacaag -ctccatctcaaggacgggaggtccattgtggttccctgccgccaccaagatgaactgatt -ggccgggcccgcgtctctccaggggcgggatggagcatccgggagactgcttgcctagca -aaatcatatgcgcaaatgtggcagctcctttatttccacagaagggacctccgactgatg -gccaatgccatttgttcatctgtgccagttgactgggttccaactgggagaactacctgg -tcaatccatggaaagggagaatggatgaccactgaagacatgcttgtggtgtggaacaga -gtgtggattgaggagaacgaccacatggaagacaagaccccagttacgaaatggacagac -attccctatttgggaaaaagggaagacttgtggtgtggatctctcatagggcacagaccg -cgcaccacctgggctgagaacattaaaaacacagtcaacatggtgcgcaggatcataggt -gatgaagaaaagtacatggactacctatccacccaagttcgctacttgggtgaagaaggg -tctacacctggagtgctgtaagcaccaatcttaatgttgtcaggc From 26ec5b6d962e0060345b1cb8a69445a3cc512f5a Mon Sep 17 00:00:00 2001 From: John Huddleston Date: Thu, 25 Feb 2021 13:15:27 -0800 Subject: [PATCH 08/11] Report how many strains were excluded by the `--exclude-all` flag Outputs how many "available strains" were initially dropped by the `--exclude-all` flag. --- augur/filter.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/augur/filter.py b/augur/filter.py index 62651c9f5..41d594ded 100644 --- a/augur/filter.py +++ b/augur/filter.py @@ -253,6 +253,7 @@ def run(args): # Exclude all strains by default. if args.exclude_all: + num_excluded_by_all = len(available_strains) seq_keep = set() # remove strains explicitly excluded by name @@ -561,6 +562,8 @@ def run(args): if num_excluded_by_lack_of_metadata: print(f"\t{num_excluded_by_lack_of_metadata} had no metadata") + if args.exclude_all: + print(f"\t{num_excluded_by_all} of these were dropped by `--exclude-all`") if args.exclude: print("\t%i of these were dropped because they were in %s" % (num_excluded_by_name, args.exclude)) if args.exclude_where: From e1b1153a0520ad81c1a79be71c97585ea84fd97a Mon Sep 17 00:00:00 2001 From: John Huddleston Date: Mon, 1 Mar 2021 11:08:34 -0800 Subject: [PATCH 09/11] Update strain counts after writing sequence output It is possible for the sequence index to be a superset of (or generally out of sync with) the given sequences output. To handle this case, we track the observed sequence strains when the user requests sequence output and update the statistics for which strains were filtered and why. We also move the handling of sequence outputs before the metadata and strain list outputs, so these outputs reflect any changes in the available sequences that occur when writing sequence output. --- augur/filter.py | 63 ++++++++++++++++++++++++++++++++++++------------- 1 file changed, 47 insertions(+), 16 deletions(-) diff --git a/augur/filter.py b/augur/filter.py index 41d594ded..029d40f6c 100644 --- a/augur/filter.py +++ b/augur/filter.py @@ -232,7 +232,6 @@ def run(args): num_excluded_by_lack_of_sequences = len(metadata_strains - sequence_strains) # Intersect sequence strain names with metadata strains. - all_strains = metadata_strains | sequence_strains available_strains = metadata_strains & sequence_strains else: num_excluded_by_lack_of_metadata = None @@ -240,7 +239,6 @@ def run(args): # When no sequence data are available, we treat the metadata as the # source of truth. - all_strains = metadata_strains available_strains = metadata_strains # Track the strains that are available to select by the filters below, after @@ -523,7 +521,48 @@ def run(args): num_included_by_metadata = len(to_include) seq_keep = seq_keep | to_include - ####Write out files + # Write output starting with sequences, if they've been requested. It is + # possible for the input sequences and sequence index to be out of sync + # (e.g., the index is a superset of the given sequences input), so we need + # to update the set of strains to keep based on which strains are actually + # available. + if is_vcf and args.output: + # Get the samples to be deleted, not to keep, for VCF + dropped_samps = list(available_strains - seq_keep) + write_vcf(args.sequences, args.output, dropped_samps) + elif args.sequences and args.output: + sequences = SeqIO.parse(args.sequences, "fasta") + + # Stream to disk all sequences that passed all filters to avoid reading + # sequences into memory first. Track the observed strain names in the + # sequence file as part of the single pass to allow comparison with the + # provided sequence index. + observed_sequence_strains = set() + with open(args.output, "w") as output_handle: + for sequence in sequences: + observed_sequence_strains.add(sequence.id) + + if sequence.id in seq_keep: + SeqIO.write(sequence, output_handle, 'fasta') + + if sequence_strains != observed_sequence_strains: + print( + "WARNING: The sequence index is out of sync with the provided sequences.", + "Augur will only output strains with available sequences.", + file=sys.stderr + ) + + # Update the set of available sequence strains and which of these + # strains passed filters. This prevents writing out strain lists or + # metadata for strains that have no sequences. + sequence_strains = observed_sequence_strains + seq_keep = seq_keep & sequence_strains + + # Calculate the number of strains that don't exist in either + # metadata or sequences. + num_excluded_by_lack_of_metadata = len(sequence_strains - metadata_strains) + num_excluded_by_lack_of_sequences = len(metadata_strains - sequence_strains) + if args.output_metadata: metadata_df = pd.DataFrame([meta_dict[strain] for strain in seq_keep]) metadata_df.to_csv( @@ -537,20 +576,12 @@ def run(args): for strain in sorted(seq_keep): oh.write(f"{strain}\n") - if is_vcf and args.output: - # Get the samples to be deleted, not to keep, for VCF - dropped_samps = list(available_strains - seq_keep) - write_vcf(args.sequences, args.output, dropped_samps) - elif args.sequences and args.output: - sequences = SeqIO.parse(args.sequences, "fasta") - sequences_to_write = (sequence for sequence in sequences if sequence.id in seq_keep) - - # Write out sequences that passed all filters using an iterator to - # ensure that sequences are streamed to disk without being read into - # memory first. - sequences_written = SeqIO.write(sequences_to_write, args.output, 'fasta') - # Calculate the number of strains passed and filtered. + if sequence_strains is not None: + all_strains = metadata_strains | sequence_strains + else: + all_strains = metadata_strains + total_strains_passed = len(seq_keep) total_strains_filtered = len(all_strains) - total_strains_passed From 34d66f5ca29326fed5cdbe214bb6d86650959030 Mon Sep 17 00:00:00 2001 From: John Huddleston Date: Mon, 1 Mar 2021 11:35:53 -0800 Subject: [PATCH 10/11] Don't warn user when sequences are a subset of the index It's is a normal use case for the sequence index to contain a superset of strains present in the sequence inputs. Only warn users about a mismatch between the index and sequences when the superset relationship is not true. --- augur/filter.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/augur/filter.py b/augur/filter.py index 029d40f6c..2de1adbed 100644 --- a/augur/filter.py +++ b/augur/filter.py @@ -546,11 +546,14 @@ def run(args): SeqIO.write(sequence, output_handle, 'fasta') if sequence_strains != observed_sequence_strains: - print( - "WARNING: The sequence index is out of sync with the provided sequences.", - "Augur will only output strains with available sequences.", - file=sys.stderr - ) + # Warn the user if the expected strains from the sequence index are + # not a superset of the observed strains. + if not observed_sequence_strains <= sequence_strains: + print( + "WARNING: The sequence index is out of sync with the provided sequences.", + "Augur will only output strains with available sequences.", + file=sys.stderr + ) # Update the set of available sequence strains and which of these # strains passed filters. This prevents writing out strain lists or From 1665e1b4a95ddcf5e4a017d40f137964bac7f738 Mon Sep 17 00:00:00 2001 From: John Huddleston Date: Thu, 4 Mar 2021 10:16:09 -0800 Subject: [PATCH 11/11] Group and reorder filter arguments Provides a more logical presentation of the many filter arguments by grouping them into inputs, metadata filters, sequence filters, subsampling, and outputs. Reorders some of the arguments such that related arguments are close to each other and required arguments occur before optional arguments (e.g., metadata before sequences). Expands some of the help strings to clarify arguments, too. --- augur/filter.py | 68 +++++++++++++++++++++++++++++-------------------- 1 file changed, 41 insertions(+), 27 deletions(-) diff --git a/augur/filter.py b/augur/filter.py index 2de1adbed..6e08f453e 100644 --- a/augur/filter.py +++ b/augur/filter.py @@ -92,35 +92,49 @@ def filter_by_query(sequences, metadata_file, query): return [seq for seq in sequences if seq in filtered_meta_dict] def register_arguments(parser): - parser.add_argument('--sequences', '-s', help="sequences in FASTA or VCF format") - parser.add_argument('--metadata', required=True, metavar="FILE", help="sequence metadata, as CSV or TSV") - parser.add_argument('--sequence-index', help="sequence composition report generated by augur index. If not provided, an index will be created on the fly.") - parser.add_argument('--min-date', type=numeric_date, help="minimal cutoff for date; may be specified as an Augur-style numeric date (with the year as the integer part) or YYYY-MM-DD") - parser.add_argument('--max-date', type=numeric_date, help="maximal cutoff for date; may be specified as an Augur-style numeric date (with the year as the integer part) or YYYY-MM-DD") - parser.add_argument('--min-length', type=int, help="minimal length of the sequences") - parser.add_argument('--non-nucleotide', action='store_true', help="exclude sequences that contain illegal characters") - parser.add_argument('--exclude', type=str, nargs="+", help="file(s) with list of strains to exclude") - parser.add_argument('--exclude-all', action="store_true", help="exclude all strains by default. Use this with the include arguments to select a specific subset of strains.") - parser.add_argument('--include', type=str, nargs="+", help="file(s) with list of strains to include regardless of priorities or subsampling") - parser.add_argument('--priority', type=str, help="file with list of priority scores for sequences (strain\tpriority)") - subsample_group = parser.add_mutually_exclusive_group() - subsample_group.add_argument('--sequences-per-group', type=int, help="subsample to no more than this number of sequences per category") - subsample_group.add_argument('--subsample-max-sequences', type=int, help="subsample to no more than this number of sequences") - parser.add_argument('--group-by', nargs='+', help="categories with respect to subsample; two virtual fields, \"month\" and \"year\", are supported if they don't already exist as real fields but a \"date\" field does exist") - probabilistic_sampling_group = parser.add_mutually_exclusive_group() - probabilistic_sampling_group.add_argument('--probabilistic-sampling', action='store_true', help="Enable probabilistic sampling during subsampling. This is useful when there are more groups than requested sequences. This option only applies when `--subsample-max-sequences` is provided.") - probabilistic_sampling_group.add_argument('--no-probabilistic-sampling', action='store_false', dest='probabilistic_sampling') - parser.add_argument('--subsample-seed', help="random number generator seed to allow reproducible sub-sampling (with same input data). Can be number or string.") - parser.add_argument('--exclude-where', nargs='+', + input_group = parser.add_argument_group("inputs", "metadata and sequences to be filtered") + input_group.add_argument('--metadata', required=True, metavar="FILE", help="sequence metadata, as CSV or TSV") + input_group.add_argument('--sequences', '-s', help="sequences in FASTA or VCF format") + input_group.add_argument('--sequence-index', help="sequence composition report generated by augur index. If not provided, an index will be created on the fly.") + + metadata_filter_group = parser.add_argument_group("metadata filters", "filters to apply to metadata") + metadata_filter_group.add_argument( + '--query', + help="""Filter samples by attribute. + Uses Pandas Dataframe querying, see https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#indexing-query for syntax. + (e.g., --query "country == 'Colombia'" or --query "(country == 'USA' & (division == 'Washington'))")""" + ) + metadata_filter_group.add_argument('--min-date', type=numeric_date, help="minimal cutoff for date; may be specified as an Augur-style numeric date (with the year as the integer part) or YYYY-MM-DD") + metadata_filter_group.add_argument('--max-date', type=numeric_date, help="maximal cutoff for date; may be specified as an Augur-style numeric date (with the year as the integer part) or YYYY-MM-DD") + metadata_filter_group.add_argument('--exclude-ambiguous-dates-by', choices=['any', 'day', 'month', 'year'], + help='Exclude ambiguous dates by day (e.g., 2020-09-XX), month (e.g., 2020-XX-XX), year (e.g., 200X-10-01), or any date fields. An ambiguous year makes the corresponding month and day ambiguous, too, even if those fields have unambiguous values (e.g., "201X-10-01"). Similarly, an ambiguous month makes the corresponding day ambiguous (e.g., "2010-XX-01").') + metadata_filter_group.add_argument('--exclude', type=str, nargs="+", help="file(s) with list of strains to exclude") + metadata_filter_group.add_argument('--exclude-where', nargs='+', help="Exclude samples matching these conditions. Ex: \"host=rat\" or \"host!=rat\". Multiple values are processed as OR (matching any of those specified will be excluded), not AND") - parser.add_argument('--include-where', nargs='+', + metadata_filter_group.add_argument('--exclude-all', action="store_true", help="exclude all strains by default. Use this with the include arguments to select a specific subset of strains.") + metadata_filter_group.add_argument('--include', type=str, nargs="+", help="file(s) with list of strains to include regardless of priorities or subsampling") + metadata_filter_group.add_argument('--include-where', nargs='+', help="Include samples with these values. ex: host=rat. Multiple values are processed as OR (having any of those specified will be included), not AND. This rule is applied last and ensures any sequences matching these rules will be included.") - parser.add_argument('--exclude-ambiguous-dates-by', choices=['any', 'day', 'month', 'year'], - help='Exclude ambiguous dates by day (e.g., 2020-09-XX), month (e.g., 2020-XX-XX), year (e.g., 200X-10-01), or any date fields. An ambiguous year makes the corresponding month and day ambiguous, too, even if those fields have unambiguous values (e.g., "201X-10-01"). Similarly, an ambiguous month makes the corresponding day ambiguous (e.g., "2010-XX-01").') - parser.add_argument('--query', help="Filter samples by attribute. Uses Pandas Dataframe querying, see https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#indexing-query for syntax.") - parser.add_argument('--output', '--output-sequences', '-o', help="filtered sequences in FASTA format") - parser.add_argument('--output-metadata', help="metadata for strains that passed filters") - parser.add_argument('--output-strains', help="list of strains that passed filters (no header)") + metadata_filter_group.add_argument('--priority', type=str, help="file with list of priority scores for strains (strain\tpriority)") + + sequence_filter_group = parser.add_argument_group("sequence filters", "filters to apply to sequence data") + sequence_filter_group.add_argument('--min-length', type=int, help="minimal length of the sequences") + sequence_filter_group.add_argument('--non-nucleotide', action='store_true', help="exclude sequences that contain illegal characters") + + subsample_group = parser.add_argument_group("subsampling", "options to subsample filtered data") + subsample_group.add_argument('--group-by', nargs='+', help="categories with respect to subsample; two virtual fields, \"month\" and \"year\", are supported if they don't already exist as real fields but a \"date\" field does exist") + subsample_limits_group = subsample_group.add_mutually_exclusive_group() + subsample_limits_group.add_argument('--sequences-per-group', type=int, help="subsample to no more than this number of sequences per category") + subsample_limits_group.add_argument('--subsample-max-sequences', type=int, help="subsample to no more than this number of sequences") + probabilistic_sampling_group = subsample_group.add_mutually_exclusive_group() + probabilistic_sampling_group.add_argument('--probabilistic-sampling', action='store_true', help="Enable probabilistic sampling during subsampling. This is useful when there are more groups than requested sequences. This option only applies when `--subsample-max-sequences` is provided.") + probabilistic_sampling_group.add_argument('--no-probabilistic-sampling', action='store_false', dest='probabilistic_sampling') + subsample_group.add_argument('--subsample-seed', help="random number generator seed to allow reproducible sub-sampling (with same input data). Can be number or string.") + + output_group = parser.add_argument_group("outputs", "possible representations of filtered data (at least one required)") + output_group.add_argument('--output', '--output-sequences', '-o', help="filtered sequences in FASTA format") + output_group.add_argument('--output-metadata', help="metadata for strains that passed filters") + output_group.add_argument('--output-strains', help="list of strains that passed filters (no header)") parser.set_defaults(probabilistic_sampling=True)