Bioinformàtica - 1er trimestre curs 2012/2013 - UPFSeminari 6
Unix III
-Comandes i manipulacions avançades de fitxers al Unix-
La major part d'aquest seminari està enfocat a que agafeu experiencia resolent qüestions biològiques senzilles mitjançant la manipulació de fitxers de texte amb Unix. Veurem, no obstant, dues comandes noves: join i fold.
La comanda join combina fitxers que tenen en comu alguna de les seves columnes. Aquesta comanda necessita que tots dos fitxers estiguin ordenats en ordre alfabètic ascendent. La sintaxi d'aquesta comanda és:
$ join fitxer1 fitxer2
Editeu els següents fitxers amb l'editor emacs:
U34892 Joan U39333 Maria U33981 Carme U38272 Pere U35813 Jaume
U35813 6.4 U39333 8.2 U34892 7.5
Ara emmagatzemeu en dos fitxers diferents les versions ordenades dels fitxers anteriors (mitjançant la comanda sort) i utilitzant la comanda join sobre la versio ordenada d'aquests dos fitxers mostreu per pantalla els noms i les notes dels estudiants matriculats a Bioinformàtica.
En aquest exercici farem anar els seguents tres fitxers que es troben només en el sistema de fitxers de les aules del Campus del Mar:
/cursos/BI/genomes/H.sapiens/golden_path_200405hg17/database/refGene.txt /cursos/BI/genomes/H.sapiens/golden_path_200405hg17/database/refPep.txt /cursos/BI/genomes/H.sapiens/golden_path_200405hg17/database/refLink.txt
Si no hi podeu accedir a aquest sistema de fitxers els podeu baixar mitjançant els segunts enllaços: refGene.txt.gz, refPep.txt.gz, refLink.txt.gz.
Si us els heu baixat a traves d'aquests enllaços observareu que en el nom porten l'extensió .gz. Això vol dir que estan comprimits amb el programa gzip, per tal de descomprimir-los, feu anar les seguents comandes:
$ gzip -d refGene.txt.gz $ gzip -d refPep.txt.gz $ gzip -d refLink.txt.gz
Aquests fitxers han estat baixats de la base de dades que hi ha a http://genome.ucsc.edu i on contenen el següent:
refGene.txt | mRNAs de GenBank alineats al genoma humà | |
refPep.txt | traduccions a proteina dels mRNAs anteriors | |
refLink.txt | taula d'associacions mRNA, proteina, funció |
Qüestió 1: mireu el contingut de tots tres fitxers i intenteu esbrinar
com està emmagatzemada la informació.
transformeu el fitxer refLink.txt en un altre que es digui, per exemple,
dprot.txt en el qual tinguem una primera columna amb l'identificador de
proteina (NP_XXXXXX) i una segona columna, separada amb una tabulació
de la primera, amb la descripció de la funció. Les linies d'aquest fitxer
han d'estar ordenades per l'identificador. El resultat hauria de ser semblant
a les següents línies (pista: només necessiteu utilitzar les comandes
sort, cut i paste):
(...) NP_000019 amylo-1,6-glucosidase, NP_000020 angiotensinogen precursor NP_000021 alanine-glyoxylate aminotransferase NP_000022 delta-aminolevulinic acid dehydratase NP_000023 aminolevulinate, delta-, synthase 2 NP_000024 ATP-binding cassette, sub-family D (ALD), member NP_000025 aldolase A NP_000026 aldolase B, fructose-bisphosphate NP_000027 adenosine monophosphate deaminase 1 (isoform M) NP_000028 ankyrin 1 isoform 3 (...)
Qüestió 2: utilizant les comandes egrep i wc,
conteu quantes proteines tenen, en la seva seqüència, repeticions de 20 o
mes aminoàcids Gln (Q's). (us hauria de donar 30)
Qüestió 3: utilitzant el fitxer dprot.txt que hem creat
anteriorment, esbrineu la descripció, o funció, de les proteines
seleccionades anteriorment. Pista: necessiteu les comandes egrep, sort,
join i cut (la darrera només per manipular la forma en que mostrem el
resultat).
Qüestió 4: en la llista anterior de proteines, en podeu identificar
alguna que estigui involucrada amb alguna enfermetat?
Efectivament, n'hi ha una involucrada
en una enfermetat de la que podeu trobar més informació en el següent
enllaç http://www.stanford.edu/group/hopes.
Ara veurem una nova comanda, la comanda fold. Proveu el següent:
$ cut -f 2 refPep.txt | fold -1 | more
i ara reemplaçant el parametre -1 per -2:
$ cut -f 2 refPep.txt | fold -2 | more
i ara reemplaçant el parametre -2 per -3:
$ cut -f 2 refPep.txt | fold -3 | more
Qüestió 5: quina és la funcionalitat de la comanda fold ?
Qüestió 6: utilitzant les comandes egrep, fold, sort i uniq,
esbrineu la distribució dels aminoàcids en el conjunt de proteines amb
repeticions de 20 o més Glutamines, mostrant el resultat de forma ordenada del
aminoàcid més freqüent al menys freqüent i enregistrant-lo en un fitxer
que s'anomeni dist_aa_repQ.txt.
Qüestió 7: mitjançant el manual del unix (comanda man)
esbrineu quina opció de la comanda egrep fa que aquesta comanda ens
retorni les línies que no encaixen amb el patró. Utilitzant aquesta
opció esbrineu la distribució dels aminoàcids en el conjunt de proteines
que no tenen repeticions de 20 o més Glutamines, mostrant el resultat de
forma ordenada del aminoàcid més freqüent al menys freqüent i
enregistrant-lo en un fitxer que s'anomeni dist_aa_senserepQ.txt.
finalment compareu les dues distribucions escrivint en el shell del Unix:
$ paste dist_aa_senserepQ.txt dist_aa_repQ.txt
Qüestió 8: quantes Glutamines de promig te cadascuna de les proteines
amb 20 o més Glutamines? i les que no tenen 20 o més Glutamines?
Els receptors nuclears d'hormones són factors de transcripció activats per lligand que regulen l'expressió dels gens i tenen, per tant, la capacitat d'unir-se a seqüències específiques d'ADN que es troben upstream dels gens. L'organització estructural i funcional dels receptors nuclears es la següent (agafada de Clarke et al., Exp Rev Mol Med, 6(25), 2004):
Quan el lligand s'uneix fa que el receptor s'activi com a factor de transcripció per als gens específics que regula. El domini que s'uneix al ADN sol estar conservat i segueix un patró consens determinat. Esbrineu la distribució en el genoma humà, en els cromosomes, dels gens que donen lloc a les proteines receptores nuclears d'hormones i calculeu també el nombre d'exons mes freqüent que solen tenir aquests gens. Per fer això, seguiu les següents passes:
[AS] | encaixa qualsevol dels símbols entre claudàtors un sol cop | |
A-S | encaixa amb els dos símbols donats de forma consecutiva | |
x | qualsevol símbol | |
x(n) | qualsevol símbol n vegades | |
x(n,m) | qualsevol símbol entre n i m vegades |
$ egrep 'A[BC]D{1,3}' fitxer.txtA continuació, a partir del fitxer de proteines refPep.txt, esbrineu quantes tenen el domini d'unió a ADN. (us hauria de donar 90)