bioawk
csvquote
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
bioawk
- Bioawk: Awk Modified for Biological Data
-
Any links to R-scripts for common NGS pipelines?
Data wrangling is actually what awk excels at, and it's generally much more concise than R for that sort of thing. I'm aware that a lot of awk one liners look like gibberish to the uninitiated, but it actually makes a lot of sense when you understand the pattern-action structure of awk programs. It is also installed on any *nix system, there's no need to worry about installing dependencies or setting up virtual environments. And it's several times faster than R. Also Bioawk is glorious.
-
Is BioAwk frequently used, or even useful?
A few months ago, I learned about this utility known as bioawk, written by Heng Li of samtools fame. Apparently, it is essentially a tweaked version of awk, with some extra goodies added for parsing and processing of bioinformatics file formats. While the functionality seems cool, I was wondering whether it is worth installing on my server, and incorporating into our workflows, because it seems so niche. I have not seen many references to it. Or is it better if we stick to Python scripts for this sort of work? Are there any computational speed advantages, etc. that bioawk offers over regular Python scripts for processing of, let's say, BED files or VCF files?
- What are the most useful cutting edge tools I should learn for bioinformatics?
-
My boss is considering letting me take a programming course if I have some good reasons why.
Beside that their core lectures to non-computer scientists are public (survey), workshops by software carpentry move around the globe. Maybe your intent to seed hands-on knowledge is in similar tune before heading for biopython, bioperl, bioawk. It doesn't hurt to tap into resources initially written for non-labrats either, e.g. about regular expressions by programming historian.
-
What are strictly data analysis jobs?
On the other hand, some of the techniques to set the ground for data analysis are equally valuable in other situations. The two installments about regular expressions on programming historian Understanding Regular Expressions and Cleaning OCR’d text with Regular Expressions, for example. They have no relevance to handling chemicals in the lab, yet since then, I find myself working with data files more efficiently, than earlier because of grep, an utility in Linux to crawl across data files. Or AWK, actually picking up theses "regexes", which I find generally useful since Benjamin Porter's "Hack the planet's text" (presentation video, and exercise video) with its link back to chem/bio e.g., to bioawk (btw, there equally is biopython, too).
-
Help they’re turning me into a programmer
Well, what language do you want to learn? What is your background so far? Assuming it is more on the side of biology, software carpentry's Python may eventually lead to biopython? Though there equally is a chance for AWK (Hack the planet's text! and bioawk...
-
Awk: The Power and Promise of a 40-Year-Old Language
There's even a version of awk specifically designed for bioinformatics that natively knows how to handle fasta, fastq, and bam files, among other formats.
https://github.com/lh3/bioawk
csvquote
- csvquote – smart and simple CSV processing on the command line
-
Understanding Awk
There is a small program I wrote called csvquote[1] that can be used to sanitize input to awk so it can rely on delimiter characters (commas) to always mean delimiters. The results from awk then get piped through the same program at the end to restore the commas inside the field values.
Also works for other text processing tools like cut, sed, sort, etc.
[1] https://github.com/dbro/csvquote
-
Awk: The Power and Promise of a 40-Year-Old Language
CSVs with quoted fields and imbedded newlines can be troublesome in awk. Years ago I had found a script that worked for me, I'm not sure but I think it was this:
http://lorance.freeshell.org/csv/
There's also https://github.com/dbro/csvquote which is more unix-like in philosophy: it only handles transforming the CVS data into something that awk (or other utilities) can more easily deal with. I haven't used it but will probably try it next time I need something like that.
What are some alternatives?
cligen - Nim library to infer/generate command-line-interfaces / option / argument parsing; Docs at
csvinfo - A small util to show max column lengths for a passed CSV file.
orange - 🍊 :bar_chart: :bulb: Orange: Interactive data analysis
busybox-w32 - WIN32 native port of BusyBox.
zarp - The Zavolab Automated RNA-seq Pipeline
MethylDackel - A (mostly) universal methylation extractor for BS-seq experiments.
Awk-Batteries - Public AWK Directory
readfq - Fast multi-line FASTA/Q reader in several programming languages
awk - Random AWK code
Biopython - Official git repository for Biopython (originally converted from CVS)
mkmcsv - Command-line utility for processing CSV files exported from Cardmarket.