Subsets rows and columns like an ordinary tibble, but the class travels
only while the result still satisfies the tales contract.
Details
Row subsetting never breaks anything: every invariant a tales
checks still holds on any subset of rows, so filtering to one array, or
to its repeats only, is still a valid tales. Column subsetting is
where it degrades: dropping array_id, or both residue columns
(rvd, dom_code) at once, leaves something that can no
longer be described as a tales, and the result is a plain tibble,
without an error. Dropping an optional column (seqnames,
aa_seq, ...) has no such consequence. A tales_msa degrades
one step at a time: losing alignment_position alone steps it back
to a plain tales.
Attributes travel with a valid subset. dom_code_namespace
describes the run the codes came from, so cutting an object down with
[ keeps its namespace unchanged.
See also
Other tales objects:
as_tales(),
format.tales(),
format.tales_msa(),
is_tales(),
new_tales(),
print.tales(),
print.tales_msa(),
summary.tales(),
summary.tales_msa(),
tales(),
tales_anchor_codes(),
tales_anomalies(),
tales_assert_complete(),
tales_bind(),
tales_names(),
tales_namespace(),
tales_requirements(),
validate_tales()