2010-10-12

2010-08-09

9th WCGALP is finnished

9th WCGALP is finnished. It was a great conference with more than 1300 participants. For me it was quite stresfull to scheudle the list of presentations I would like to attend as there were six sessions in parallel. Well, I managed more or less to get maximum out of it. I believe we can say that the premise of this confernce was genomic selection, but there were also some other interesting stuff on genetics/genomics applied to livestock species. It was fun to met old and new colleagues and friends.

My contribution (Flexible Bayesian Inference of Animal Model Parameters Using BUGS Program) was chosen to be presented as a poster. I hoped for a talk, but this is part of the "game". I got quite some inquries at the poster session, so I am satisfied.

For LaTeX enthusiasts: I created poster using beamerposter package using the tweaked style from Martin Weiglhofer. It is a great LaTeX package, but it took me quite long to get the poster done - the initial layout and setting was fast, but tweaks (positioning a bit left, right, up, down, ...) were quite time consuming. MS PowerPoint still rocks in this regard, though the typsetting is much much nicer with LaTeX.
Flexible Bayesian Inference of Animal Model Parameters Using BUGS Program - poster

2010-07-28

IPSUR book used LyX-Sweave

Jay Kerns wrote a book titled "Introduction to Probability and Statistics Using R" or IPSUR for short. He has put up a web site for the book and Rcmdr plugin. There are at least two very important points from my side (I did not read the book, yet): 1. it is free to download (thank you Jay!!!) and 2. it was written with the help of LyX-Sweave. This shows that combination of LyX and Sweave is really powerful.

2010-06-30

Drawing pedigree examples using the kinship R package

I have previously provided sort of an overview about plotting the pedigrees, then specifically using the Graphiviz, while I have lately used the TikZ LaTeX (see slides 11-15) system (see more example). The later gives great (beautiful) results, but at the cost of writing TikZ code - it is not that horible, just time consuming - the same applies to Graphviz. Is there a quick way to plot a pedigree if we already have the data in the file. It is possible to do it in R using the kinship package. Here is an example:
ped <- data.frame( id=c( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11),
fid=c( 0, 0, 0, 3, 3, 5, 3, 6, 6, 0, 9),
mid=c( 0, 0, 0, 2, 1, 4, 4, 7, 7, 0, 10),
sex=c( 2, 2, 1, 2, 1, 1, 2, 1, 1, 2, 2),
aff=0)
ped[11, "aff"] <- 1

library(package="kinship")
ped <- with(ped, pedigree(id=id, dadid=fid, momid=mid, sex=sex, affected=aff))
plot(ped)
Which gives the following result. It is not great, but it is informative and easy to do. From a practical point of implementation all pedigree members need to have both parents known or no parents known.


2010-06-29

Relationship between correlation and cosine

See very nice blog post by John D Cook here.

Sweave.sh in Eclipse-StatET

Sébastien Bihorel sent the following instructions on how to use my sweave.sh shell script in Eclipse-StatET.
1- First, you need to know the path to your TEXINPUTS settings. Type R CMD env |grep TEXINPUTS in a shell. In my installation (opensuse 11.2), the shell returned the following
TEXINPUTS=.::/usr/lib/R/share/texmf:

2- Edit your .bashrc file (located in your home directory) and add the following statement
export TEXINPUTS

3- Download Gregor Gorjanc's sweave.sh script at http://cran.r-project.org/contrib/extra/scripts/Sweave.sh. Copy it to /usr/local/bin, rename the file to sweave (mv sweave.sh sweave) and make the file executable (chmod +ax sweave) if it is not already.

4- Open Eclipse and create a new Program in External Tools Configuration using the following settings:
>Main:
- location: /usr/local/bin/sweave
- working directory: ${container_loc}
- Arguments: -ld ${resource_loc}

>Refresh:
no selection

>Build:
Build before launch: checked
The project containing the selected resource: checked
Include referenced projects: checked

>Environment: added a new variable
Variable: TEXINPUTS
Value: .:/usr/lib/R/share/texmf: <- Use here the path obtained at step 1 (for some reason you have to add .: before the path and : after. Do not use quotes around the Value) Append environment to native environment: checked >Common:
Local file: checked
Console encoding: default - inherited (UTF-8)
Standard Input and Ouput: Allocate console
Launch in background: checked


Now you should be able to see sweave as a new program in your main screen. Hope it helps

Sebastien

2010-05-29

Beta koeficient iz asociacijske študije

Od Matjaža Stanonika sem prejel sledeče vprašanje:
Interpretirati moram rezultate članka, ki so podani v beta koeficientu. Če sem prav ugotovil je to v slovenščini standardizirani koeficient korelacije. Vendar pa si kljub temu ne znam praktično razložiti rezultatov. Primer iz članka: nek SNP vpliva na nivo LDL-ja v telesu. Na določeni populaciji so ugotovili, da je beta koeficient za ta SNP 0,10. Sedaj pa ne vem, kaj praktično pomeni ta številka.
Moj odgovor:

Predvidevam, da je govora o vrednostih+ v tabeli 3. Vzemimo SNP rs646776c (prvi v tabeli). Ocena za beta koeficient za ta SNP znaša −0.16 s standardno napako (v oklepaju) 0.01.

Kaj je beta koeficient v tem primeru? Pod tabelo je napisano: "Beta-coefficient (β) represents the proportion of 1 s.d. change in standardized LDL cholesterol residual (mean = 0, s.d. = 1 after adjustment for age, age2, gender, and diabetes status) per copy of the allele modeled".

Če prav razumem so naredili sledeče. Izmerili so holesterol vrste LDL (fenotip) in najprej te vrednosti korigirali za vpliv starosti (kot kvadratno regresijo), spol in status diabetesa - predidevam, da so vse vplive vključili v statistični model, ki ga lahko zapišemo kot y = m + x + x^2 + s + d + e, kjer je y - fenotip, m - srednja vrednost populacije, x - starost, s - spol (1 - moški, 2 - ženski), d - diabetes (0 - ne, 1 - da) in e - nepojasnjeni ostanek. Vrednosti (e v enačbi), ki so jih dobili iz korekcije so standardizirali, tako da je bilo povprečje 0 in standardni odklon 1. To pomeni, da lahko po analogiji normalne porazdelitve pričakujemo minimum pri ~ -3 in maksimum pri ~ +3.

Beta koeficient je tako ocena vpliva zamenjave enega SNP allela na povprečje korigiranih vrednostih. Če ima nek osebek genotiip A1A1 nekdo drugi pa A1A2, potem pričakujemo, da se bosta ta dva osebka v povprečju razlikovala za -0.16+-0.01 standardne deviacije holesterola LDL - standardna napaka je praktično zanemarljivo majhna. Pri osebku z genotipom A2A2 pa 2*-0.16+-0.01 standardne deviacije holesterola LDL. Tole s standardno deviacijo je malo zapleteno. Recimo, da je v neki populaciji (vrednosti si bom izmislil!!!) povprečje za holesterol LDL 100 enot in standardna deviacija 10 enot. Potem bi razlika med A1A1 in A1A2 bila -0.16 * 10 enot = -1.6 enot.

2010-04-24

Nice writing on the use of McMC in applied work

See "Inference from simulations and monitoring convergence1" by Gelman and Shirley. The especially point out that quite few McMC samples are needed to get a reasonable picture of posterior distribution, while more samples are needed if the precise knowledge of posterior mean or any similar quantity is needed.