TRANSMUTE(1)
π TRANSMUTE(1) π
okay bestie, sit down, hydrate, because this is the Swiss-Army-knife-of-a-tool from the NCBI Entrez Direct User's Manual and she does. literally. everything. π
transmute is one of those commands where you type the name and then a flag and suddenly your whole data pipeline is fixed. it's giving β¨main character energyβ¨. we're gonna go through her whole resume, flag by flag, no cap.
β¨ NAME β¨
transmute β transform data, particularly within NCBI Entrez Direct π¦
β¨ SYNOPSIS β¨
okay so here's the whole menu of vibes. no skipping, we're listing every single one π«Ά
the little plain-ification trio:
transmute -x2p|-j2p|-f2p
sequence alignment moment:
transmute -align [-a codes] [-g N] [-h N] [-w N]
JSON β XML, and her cousin:
transmute -j2x (json2xml) [-set tag] [-rec tag]
[-nest flat|recurse|plural|singular|depth|element]
transmute -a2x [-set tag] [-rec tag]
table / CSV / SCN β XML (the whole little 2x clique β¨):
transmute -t2x|-c2x|-s2x (tbl2xml / csv2xml / scn2xml) [-set tag]
[-rec tag] [-skip N] [-header] [-lower|-upper] [-indent|-flush]
columnName1 ...
ini β XML:
transmute -i2x (ini2xml)
TOML β XML:
transmute -m2x (toml2xml)
YAML β XML:
transmute -y2x (yaml2xml)
filtering records, i.e. the βοΈ era:
transmute -txf (filter-record) [-pattern str] [-exclude str]
[-require str] [-min N] [-max N]
FSA β XML:
transmute -f2x (fsa2xml)
GenBank flat file β XML, and flat file β reference:
transmute -g2x (gbf2xml)
transmute -g2r (gbf2ref)
references β PMIDs, with a whole pile of little -options:
transmute -r2p (ref2pmid) [-options confirm|verbose|fast|slow|exact ...]
filtering GenBank, this time by accession, taxid, organism, all of it:
transmute -gbf (filter-genbank) [-accession acc|-accessions file]
[-taxid id|-taxids file] [-organism name] [-exclude str] [-require str]
[-truncate]
reverse complement szn:
transmute -revcomp
chopping from the front, chopping from the back:
transmute -remove [-first N] [-last N]
keeping a middle slice, -leading through -trailing:
transmute -retain -leading N-trailing N
the editor era β delete, insert, lowercase, offset or column:
transmute -replace -offset N|-column N [-delete N] [-insert seq]
[-lower]
extract a feature location, and yes you pick your indexing:
transmute -extract [-1-based|-0-based] [-lower] feat_loc
CDS β protein, with so many options bestie:
transmute -cds2prot [-gcode N] [-frame N|-all] [-stop] [-trim] [-part5]
[-part3] [-every] [-between str] [-circular] [-orf] [-max N]
molecular weight, with a little methionine flourish:
transmute -molwt [-met|-fmet]
HGVS things:
transmute -hgvs
counting things:
transmute -counts
comparing things:
transmute -diff
codon check β nuc vs prot, frame optional, three-letter optional:
transmute -codons -nuc seq -prot seq [-frame N] [-three]
searching, protein and/or circular, maybe just the top hit:
transmute -search [-protein] [-circular] [-top] pattern ...
finding, with relaxed / sensitive / whole modes:
transmute -find [-relaxed] [-sensitive] [-whole] pattern ...
the XML encoding squad π:
transmute -encodeXML|-decodeXML|-plainXML
the URL encoding squad:
transmute -encodeURL|-decodeURL
the base64 squad:
transmute -encode64|-decode64
strip it back:
transmute -plain
case it up, case it down:
transmute -upper|-lower
amino acids, one letter β three letter:
transmute -aa1to3|-aa3to1
the relaxer:
transmute -relax
the β¨formatβ¨ girl β she has opinions on declarations, comments, CDATA, combining, self-closing, unicode, script, mathml:
transmute -format [fmt] [-xml declaration] [-doctype declaration]
[-comment] [-cdata] [-combine] [-self] [-unicode style] [-script style]
[-mathml terse]
filter by element, action, target:
transmute -filter element action target
and normalize a database:
transmute -normalize database
β¨ DESCRIPTION β¨
okay so the whole plot: transmute reads data from standard input, transforms it according to the specified mode, and writes the transformed data to standard output. that's it. that's the girl. πΈ
in β mode β out. iconic behavior, honestly. π
and bestie, we are so not done β the flags and the details are still coming π
β¨ OPTIONS β¨
okay bestie, here's the whole menu, and it's a LOT. we're not skipping a single flag, so grab a snack π
Pretty-Printing π
-x2pβ reformats XML. glow-up for your markup β¨-j2pβ reformats JSON. same energy, curly braces edition π-f2pβ reformats FASTA. yes, even your sequences get the treatment π§¬-alignβ table column alignment. lining everything up like the icon it is π-acodes β the column alignment codes, pick your fave:lβ left.cβ center.rβ right.nβ numeric align on decimal point.Nβ trailing zero-pad decimals.zβ leading zero-pad integers.mβ commas to group by 3 digits.Mβ commas plus zero-pad decimals.wβ just print colum widths.
-gN β spacing between columns.-hN β indentation before columns.-wN β minimum column width.
Data Conversion π
-j2xβ convert a JSON stream to XML that's suitable for-pathnavigation. json girlies stay winning π-settag β replace the set wrapper tag.-rectag β replace the record wrapper tag.-nestflat|recurse|plural|singular|depth|element β the nested array naming policy. choose your fighter.
-a2xβ convert a text ASN.1 stream to XML suitable for-pathnavigation.-settag β replace the set wrapper tag.-rectag β replace the record wrapper tag.
-t2x,-c2x,-s2xβ convert a tab-delimited table, a comma-separated values file, or a semicolon-delimited table (respectively) to XML. three besties, one job β¨-settag β replace the set wrapper tag.-rectag β replace the record wrapper tag.-skipN β skip the first N lines.-headerβ use fields from the first row for column names.-lowerβ convert text to lowercase.-upperβ convert text to uppercase.-indentβ indent XML output.-flushβ do not indent XML output.- columnName1 ... β XML object names per column.
-i2xβ convert.iniconfiguration file format to XML.-m2xβ convert TOML configuration file format to XML.-y2xβ convert YAML configuration file format to XML.-txfβ text file filtering. the bouncer at the door of your file πͺ-patternstr β pattern at start of record.-excludestr β reject if string is present.-requirestr β require presence of string.-minN β minimum record number.-maxN β maximum record number.
-f2xβ convert a FASTA stream to corresponding XML.-g2xβ convert GenBank/GenPept flatfile format to INSDSeq XML.-g2rβ convert GenBank/GenPept flatfile format to Reference XML.-r2p [-options option ...]β Reference Index XML lookup to find PMIDs. here's what you can throw in option:confirmβ recheck existing PMID claims.verboseβ add NOTE nodes explaining the reasoning.fastβ prefilter candidates relatively heavily (this is the default, bestie).slowβ prefilter candidates less heavily.exactβ require exact, unique title matches.
-gbfβ GenBank/GenPept filtering.-accessionacc β single accession.-accessionsfile β file of accessions.-taxidid β single taxon identifier.-taxidsfile β file of taxon identifiers.-organismname β organism scientific name.-excludestr β reject if string is present.-requirestr β require presence of string.-truncateβ remove features and sequence. bye bye π
Sequence Editing βοΈ
-revcompβ reverse complement nucleotide sequence. flip it and reverse it π-removeβ trim at the ends of the sequence.-firstN β delete first N bases or residues.-lastN β delete last N bases or residues.
-retainβ save either end of the sequence. keep the good parts π«Ά-leadingN β keep first N bases or residues.-trailingN β keep last N bases or residues.
-replaceβ apply a base or residue substitution.-offsetN β skip ahead by 0-based count (SPDI), or-columnN β move just before 1-based position (HGVS).-deleteN β delete N bases or residues.-insertseq β insert the given sequence.-lowerβ lower-case the original sequence.
-extractβ usextract -insd ... feat_locationinstructions.-1-basedβ GenBankfeat_locationconvention.-0-basedβ alignment, or-insd feat_intervals.-lowerβ lower-case the extracted sequence.- feat_loc β feature location.
Sequence Processing π§¬
-cds2protβ translate a coding region into protein. the main character transformation arc β¨-gcodeN β genetic code (1by default).-frameN β offset in sequence (0-based).-stopβ include stop residue.-trimβ remove trailingXs and*s.-part5β CDS partial at 5' end.-part3β CDS extends past 3' end.-everyβ translate all codons.-betweenstr β optional string between residues.-allβ simultaneous six-frame translations.-circularβ reprocess the first two priming bases at the end.-orfβ only capitalize residues at start states.-maxN β number of residues per line.
-molwtβ calculate the molecular weight of a peptide. it's giving chemistry π-metβ do not cleave the leading methionine.-fmetβ retain leading formyl-methionine.
Variation Processing π¦
-hgvsβ convert Human Genome Variation Society variation format to XML.
Sequence Comparison π
-countsβ print a summary of base or residue counts.-diffβ compare two aligned files for point differences.-codonsβ display nucleotide codons above amino acid residues.-nucseq β nucleotide sequence.-protseq β protein sequence.[-frameN]β offset in nucleotide sequence.[-three]β use three-letter residue abbreviations.
Sequence Searching π
-searchβ search for one or more patterns in a sequence, skipping any FASTA definition line (the one with a leading>). each pattern can have an optional alias, likeGGATCC:BamHI.-proteinβ do not expand nucleotide ambiguity characters.-circularβ match patterns spanning the origin of a circular molecule.-topβ do not search reverse complements of non-palindromic patterns.- pattern β pattern to search for.
Text Searching π
-findβ find one or more patterns in text, allowing digits, spaces, punctuation, and phrases, like"double, double toil and trouble". shakespeare coded, no cap π-relaxedβ match on words with letters and digits, ignoring spacing and punctuation.-sensitiveβ case-sensitive match, distinguishing upper-case and lower-case letters.-wholeβ match on whole words or multi-word phrases; implies-relaxed.- pattern β pattern to search for.
String Transformations πͺ
XML
-encodeXMLβ XML-encode<,>,&,", and'characters.-decodeXMLβ decode XML entity references.-plainXMLβ remove embedded mixed-content tags and compress runs of spaces.
URL
-encodeURLβ compress runs of spaces, and URI-escape the result.-decodeURLβ URI-unescape the input.
Base64
-encode64β Base64-encode the input.-decode64β Base64-decode the input.
Accent
-plainβ strip accents from the input.
Case
-upperβ convert the input to uppercase.-lowerβ convert the input to lowercase.
Protein π₯
-aa1to3β convert amino acids from 1-character to 3-character format.-aa3to1β convert amino acids from 3-character to 1-character format.
Letters plus Digits π’
-relaxβ remove all punctuation and compress whitespace.
Customized XML Reformatting β¨
-format [fmt]β pick your formatting vibe:compactβ compress runs of spaces.flushβ suppress line indentation.indentβ indent according to nesting depth.expandβ place each attribute on a separate line.-xmldeclaration β use the given XML declaration.-doctypedeclaration β use the given document type declaration.-commentβ preserve comments.-cdataβ preserve cdata blocks.-combineβ if the input contains multiple top-level documents, combine them.-selfβ keep empty self-closing tags.-unicodestyle β how to handle Unicode superscript and subscript digits (they get converted to ASCII form first in all cases, every single time):fuseβ run them all together, with no additional markup.spaceβ add spaces between digits in different positions.periodβ add periods between digits in different positions.bracketsβ surround superscripts by square brackets and subscripts by parentheses.markdownβ surround superscripts with carets and subscripts with tildes.slashβ add backslashes when going up in height and forward slashes when going down.tagβ put superscripts in XMLsupelements and subscripts insubelements.
-scriptstyle β how to handle XMLsupandsubelements (those are superscripts and subscripts, respectively):bracketsβ surround superscripts by square brackets and subscripts by parentheses.markdownβ surround superscripts with carets and subscripts with tildes.
-mathmlterse β flatten MathML markup tersely.
XML Modification π οΈ
-filterelement action target
Actions:
retainβ keep matching elements (a no-op, literally does nothing bestie).removeβ remove matching elements.encodeβ HTML-escape special characters.decodeβ decode HTML escapes.shrinkβ compress runs of spaces.expandβ place each attribute on a separate line.accentβ strip off Unicode accents.
Targets:
contentβ plain-text content.cdataβ CDATA blocks.commentβ comments.objectβ the whole object.attributesβ attributes.containerβ start and end tags.
EFetch XML Normalization π§
-normalizedatabase β adjust XML fields so they conform to common conventions.
πΈ SEE ALSO πΈ
okay bestie, if you're obsessed with transmute (and honestly? same π
) here's the whole squad of sibling tools you're gonna want to know. go give them a lil follow, they all ate:
align-columns(1)blst2tkns(1)bsmp2info(1)cit2pmid(1)csv2xml(1)disambiguate-nucleotides(1)download-flatfile(1)download-pubmed(1)ds2pme(1)efetch(1)filter-columns(1)filter-genbank(1)gbf2info(1)gbf2tbl(1)gff2xml(1)gff-sort(1)jsonl2xml(1)pma2apa(1)pma2pme(1)pmc2bioc(1)pmc2info(1)print-columns(1)ref2pmid(1)snp2tbl(1)sort-table(1)spdi2tbl(1)systematic-mutations(1)tbl2prod(1)uniq-table(1)xml2fsa(1)xml2tbl(1)xfetch(1)xtract(1)
and that's a wrap on the whole page, bestie!! πβ¨ this iconic little manual was brought to you by the fine folks at NCBI π, dated 2025-05-26, and it lives under the name TRANSMUTE(1) in your friendly neighborhood section 1. now go transmute something, you absolute legend ππ¦
π¦ where this page comes from
- debian trixie: ncbi-entrez-direct 24.0.20250523+dfsg-1+b1 Β· PD
- ubuntu questing: ncbi-entrez-direct 24.0.20250523+dfsg-1
- ubuntu resolute: ncbi-entrez-direct 24.0.20250523+dfsg-2 Β· PD
- ubuntu stonking: ncbi-entrez-direct 24.0.20250523+dfsg-2 Β· PD
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms