środa, 13 czerwca 2012

Getting linked exons BED from UCSC tables

Today I needed bigBed file for visualization of transcript positions in a browser which is bigBed and bigWig based. I have found a discussion where Katrina Learned from UCSC Genome Bioinformatics Group posted very usefull script. I am not going to reinvent the wheel.
nano genePredToBed
and paste this
#!/usr/bin/awk -f

#
# Convert genePred file to a bed file (on stdout)
#
BEGIN {
     FS="\t";
     OFS="\t";
}
{
     name=$1
     chrom=$2
     strand=$3
     start=$4
     end=$5
     cdsStart=$6
     cdsEnd=$7
     blkCnt=$8

     delete starts
     split($9, starts, ",");
     delete ends
     split($10, ends, ",");
     blkStarts=""
     blkSizes=""
     for (i = 1; i <= blkCnt; i++) {
         blkSizes = blkSizes (ends[i]-starts[i]) ",";
         blkStarts = blkStarts (starts[i]-start) ",";
     }

     print chrom, start, end, name, 1000, strand, cdsStart, cdsEnd, 0, 
blkCnt, blkSizes, blkStarts
}
We are almost ready to make our bed file:
chmod +x genePredToBed
wget http://hgdownload.cse.ucsc.edu/goldenPath/mm9/database/knownGene.txt.gz
gzip -d knownGene.txt.gz
cat knownGene.txt | ./genePredToBed > known.bed
Now we can use Jim Kent's bedToBigBed and we are done.

Getting GTF from UCSC with proper gene_id

While downloading GTF file (knownGenes or ensemblGenes) from UCSC Table browser an output has one serious issue. Transcript_id = gene_id. And in fact there is no gene_id. Below simple solution is presented for this problem (mm9 genome):

#prerequisities mysql
wget http://hgdownload.cse.ucsc.edu/admin/exe/linux.x86_64/genePredToGtf
chmod +x genePredToGtf
sudo ln -s ./genePredToGtf genePredToGtf
mysql --user=genome --host=genome-mysql.cse.ucsc.edu -A -N -e "select * from ensGene;" mm9 | cut -f2- | genePredToGtf file stdin ensGene.gtf

wtorek, 1 maja 2012

Converting between .gff, .gtf and .bed formats

Various NGS analysis tools require various input formats. It is sometimes tricky to make free software working.
Recently, all required tools for converting between .gff, .gtf and .bed formats were incorporated into Tubingen Rätsch Lab Galaxy instance

http://galaxy.tuebingen.mpg.de/

czwartek, 26 kwietnia 2012

R tips

If you are looking for R tips for beginners and advanced users there is nothing better than this:
http://pj.freefaculty.org/R/Rtips.html

or in .pdf version:
http://pj.freefaculty.org/R/Rtips.pdf

Topics include:
- exchange data between R and other programs (Excel, etc)
- create variable names on the fly
- return multiple values from a function
- scatterplot: smooth a line connecting points
- test for Normality
- multiple analysis of variance
- character encoding
- R environment in side scripts

and many more. Enjoy.

poniedziałek, 12 marca 2012

[solved] git updating directory error

Today, my collaborator in a project replaced webapp/gwt/ directory with dynamic link to war/gwt directory

In .gitignore we had only this statement:
...
webapp/gwt/* 
...

During the pull origin somebranch i got this error:
git error: Updating the following directories would lose untracked files in it:
{{yourdir}}

Solution:
rm -rf {{yourdir}}
git pull origin {{somebranch}}
and add to .gitignore the conflicting dynamic link.

Google wasn't very helpfull this time. I hope this tip will help someone in the future...

poniedziałek, 5 marca 2012

[solved] libexpat.la missing

Today I got this error:

libtool: link: cannot find the library "libexpat.la" or unhandled argument libexpat.la ubuntu

To solve this issue run in apache source directory

cd srclib/apr-util/xml/expat
./configure
# OR ./configure --prefix=/{{YOURDIR}}/apache/source/httpd-2.2.22/srclib/apr-util/xml/expat/
sudo make install
# OR make install

Remember to clean up your previous apache install after make install failed

cd {{YOURDIR}}/apache/
ls -la
rm -r bin
rm -r build
rm -r include
rm -r lib

czwartek, 23 lutego 2012

10 papers that every bioinformatician should read

This list of top 10 papers in bioinformatics does not only consist of purely bioinformatic papers, but shows how gentle and simple bioinformatics can and should be:

1. Dudley JT, Butte AJ (2009) A Quick Guide for Developing Effective Bioinformatics Programming Skills. PLoS Computational Biology 5(12)
Link
"Consequently it is no surprise that many successful bioinformatics apps are written by biologists who lack formal computer science training, as they undoubtedly put scientific utility ahead of architectural elegance and completeness."

2. Kim TK, Hemberg M, Gray JM, Costa AM, Bear DM, Wu J, Harmin DA, Laptewicz M, Barbara-Haley K, Kuersten S, Markenscoff-Papadimitriou E, Kuhl D, Bito H, Worley PF, Kreiman G, Greenberg ME (2010) Widespread transcription at neuronal activity-regulated enhancers. Nature 465(7295)
Link
Simple and brilliant use of ChIP-seq and RNA-seq techniques.

3. Goecks J, Nekrutenko A, Taylor J, and The Galaxy Team (2010) Galaxy: a comprehensive approach for supporting accessible, reproducible, and transparent computational research in the life sciences. Genome Biology 11(8)
Link
Bioinformatics for the masses.

4. Ameur A, Zaghlool A, Halvardson J, Wetterbom A, Gyllensten U, Cavelier L, Feuk L (2011) Total RNA sequencing reveals nascent transcription and widespread co-transcriptional splicing in the human brain. Nature Structural & Molecular Biology 18
Link
Great example of getting additional features from RNA-seq data.

5. Smedley D, Haider S, Ballester B, Holland R, London D, Thorisson G, Kasprzyk A (2009) BioMart – biological queries made easy. BMC Genomics 10
Link
Data mart for biologists.

6. Krzywinski M, Schein J, Birol I, Jones S, Marra M (2008) Circos - an information aesthetic for comparative genomics. Genome Informatics conference
Link
Beauty of data visualization.

7. Majewski J, Ott J (2004) Distribution and characterization of regulatory elements in the human genome. Genome Research 12
Link
One of the first successful attempts to analyze genomic features at genome scale.

8. Kent WJ, Zweig AS,  Barber G, Hinrichs AS, Karolchik D (2009) BigWig and BigBed: enabling browsing of large distributed datasets. Bioinformatics 26(17)
Link
Standard formats for storing NGS-data. Fast, simple.


The list will continue...