Saturday, June 23, 2007

Recommend Books for micarray analysis

Bioinformatics and Computational Biology Solutions Using R and Bioconductor (Statistics for Biology and Health)

Mapping Agilent Microarray ID to Affymetrix GeneChip using ActiveRecord

First, I make ActiveRecord model script (ensembl.rb) for Agilentprobe
table in EnsemblMart.


#!/usr/bin/env ruby

require 'rubygems'
require_gem 'activerecord'

ActiveRecord::Base.pluralize_table_names = false

ActiveRecord::Base.establish_connection(
:adapter => 'mysql',
:database => 'ensembl_mart_40',
:host => 'ensembldb.ensembl.org',
:username => 'anonymous',
:password => ''
)

class Agilentprobe <>

Next, I make ID translation program (
affyprobe2moe4302.rb) using above script.

#!/usr/bin/env ruby

require 'ensembl'
agilentid = 'A_52_P654624'
agilentprobe = Agilentprobe.find_by_dbprimary_id('A_52_P654624')
moe4302 = Moe4302.find_all_by_gene_id_key(agilentprobe.gene_id_key)
moe4302.each do |entry|
puts [aglentid,
entry.gene_stable_id, entry.transcript_stable_id, entry.translation_stable_id,
entry.dbprimary_id].join("\t")
end
Let's run it!

$ ruby affyprobe2moe4302.rb
A_52_P654624    ENSMUSG00000058140      ENSMUST00000081249      ENSMUSP00000080006      1429452_x_at
A_52_P654624 ENSMUSG00000058140 ENSMUST00000081249 ENSMUSP00000080006 1435353_a_at
A_52_P654624 ENSMUSG00000058140 ENSMUST00000071829 ENSMUSP00000071732 1429452_x_at

Modeling Ensembl Mart using ActiveRecord

First, I make a Ruby script for modeling ensembl mart.

#!/usr/bin/env ruby

require 'rubygems'
require_gem 'activerecord'

ActiveRecord::Base.pluralize_table_names = false

ActiveRecord::Base.establish_connection(
:adapter => 'mysql',
:database => 'ensembl_mart_40',
:host => 'ensembldb.ensembl.org',
:username => 'anonymous',
:password => ''
)

class
Agilentprobe < ActiveRecord::Base
set_table_name "
mmusculus_gene_ensembl__xref_agilentprobe__dm"
set_primary_key "gene_id_key"
end


Second, I make a searching program for Agilentprobe talbe in
Ensembl Mart using above modeling code.

#!/usr/bin/env ruby

require '
ensembl'

agilentprobe = Agilentprobe.find_by_dbprimary_id('A_52_P654624')

puts
agilentprobe.dbprimary_id
puts
agilentprobe.gene_id_key
puts
agilentprobe.gene_stable_id
puts
agilentprobe.transcript_id_key
puts
agilentprobe.transcript_stable_id
puts
agilentprobe.translation_id

Let's run it!

$ ruby run_
ensembl.rb
A_52_P654624
209556
ENSMUSG00000058140
263491
ENSMUST00000081249
251942
ENSMUSP00000080006

Free clustring software for gene expression data

Cluster 3.0 + Java TreeView

TM4

dChip

Expression Profiler

GenePattern (Maybe freesoft)

R + BioConductor

One-liner for mapping Agilent Microarray ID to Affymetrix Genechip ID

echo "
SELECT
mmusculus_gene_ensembl__xref_agilentprobe__dm.dbprimary_id,
mmusculus_gene_ensembl__xref_agilentprobe__dm.gene_stable_id,
mmusculus_gene_ensembl__xref_affy_mouse430_2__dm.dbprimary_id
FROM
mmusculus_gene_ensembl__xref_agilentprobe__dm,
mmusculus_gene_ensembl__xref_affy_mouse430_2__dm
WHERE
mmusculus_gene_ensembl__xref_agilentprobe__dm.dbprimary_id = 'A_52_P654624' AND
mmusculus_gene_ensembl__xref_agilentprobe__dm.gene_id_key = /
mmusculus_gene_ensembl__xref_affy_mouse430_2__dm.gene_id_key;" /
| mysql -h ensembldb.ensembl.org -A -uanonymous -D ensembl_mart_40

You need mysqlclient.

Sunday, June 03, 2007

One-liner for mapping Affymetrix Probe ID to NCBI Entrez Gene ID :-)

You can map Affymetrix IDs to NCBI Entrez Genes by one-liner command.
echo 'library(mouse4302)\nwrite.table(unlist
(as.list(mouse4302GENENAME)),
file="affyid2genename.txt", sep="\\t", eol="\\n",
quote=F, col.names=F)' | R --no-save
The result was written to "affyid2genename.txt" file:
less affyid2genename.txt
1459626_at NA
1457754_at RIKEN cDNA 4930430F08 gene
1452692_a_at NADH dehydrogenase (ubiquinone) flavoprotein 2
:
:
You need R, Bioconductor and mouse4302 package.

Making a gene expression database within 11 min using Ruby on Rails

Ruby on Rails is very powerful web application framework. This site shows that bioinformatics scientist can make a simple viewer for gene expression data within 11 min using Ruby on Rails.

See following the movie:
http://itoshi.tv/data/geneexp/RoR.html

Saturday, June 02, 2007

We need big memory for exon array analysis

In addition, the oligo package will require you to make a PDEnv
with the HuEx-l_OST-V2.cdf file, which I am unable to do on
a 64 bit Linux box with 8 Gb RAM (I think 16 Gb is sufficient).
via Re: Human exon array chip

Exonmap (Bioconductor package for exon array analysis)
requires big memory.

via Affy EXON Array: iterPLIER or RMA

It is based on the affy exon probeset mappings. It can run on
a machine with 4Gb of memory, but can easily use 8-12Gb depending
on what your trying to do. There are other probeset environments
available for this platform at Bioconductor (refseq, ensembl, etc.)
which are much more memory friendly.

via Re: Affymetrix exon arrays?

The oligo/makePlatformDesign packages can be used for the
exon arrays. However, you should know that these arrays are
incredibly huge, so unless you have a 64 bit OS and around
16 - 32 Gb RAM you won't be able to do anything with them.
via Re: Bioconductor package for Affymetrix Exon arrays.


You must read documents if you analysis of exon array

Quality assessment
Background correction

Gene-level expression

Alternative splicing anaysis

Useful websites for Exon Array analysis

GeneChip All exon array official information
Mouse exon array offical information

Software

Summarize, Background model, probe selection

Alternative splicing detection

Analysis

Viewer
Data and Database
Etc.