Kaardistasin RNA loetud võrdlusgenoomi, kasutades LAST jagatud režiimis, ja teisendasin MAF-i joondamise SAM-i maf-konverteerimise abil.
Minu probleem on see, et ärakirju ei edastata splaissitult, see tähendab, et transcript_ID
esitatakse joondamise SAM-failis mitu korda identse bitipikkusega lipuga 2 dollarit
. Minu arusaamist mööda on see tingitud asjaolust, et kaardistatakse ainult eksonid (üks ekson rea kohta) ja esitatakse kohalike joondustena, kuna tarkvara ei saa tegeleda spoonimismudelite kombinatsiooniga exon-intron (veel), mis käitumisest on selge sigar CIGAR.
Konkreetsema ja visuaalse näite saamiseks kaalume transkripti FBtr0344900
vastendamist võrdlusgenoomile, nagu on andnud LAST:
$ cat last_aln .sam | grep FBtr0344900FBtr0344900 0 4 42774 100 384 = 144 tundi * 0 0 TGCGACATTGTTCTACGATGACTACAAAAAATGACCAATAACTTCTATAAACCAATACGATATGTCAGGAGTTTCGGTCCCATACGAAGTCGCCGACTTAAGTATTTTATttttattttgatATGTGTTTGCTATTTTACCTTGTCGAATGCTTCCACACGCTATGAGAATACCATCGTGAGCGTAGCTTACTACTAGAATTTTGTTGAAGTTATTGACAAGCGATGTCTCAATATCTTCCGGACAGCCTCCAGCGTGACATTGCGGGGAATCATGTAACGGCCCAGTAACAGCCTCGGCCAGCACTCGAAGGTTTTCGTTAAGTTTAAGTATTTTATTTGTAGCACCCGCAAACAAAACATTGTGCATAAAGTCGAAGCTCAT * NM: i: 0 AS: i: 2304FBtr0344900 0 4 43231 100 384H144 = * 0 0 CTGGAAGCTGTTGATTGAACTGGTATTGATGGCAAGTTAAACTGGGCGACTATGTCATTTAAGGGAGATAACGCCTGAGCCGGCAGTTCTTCAATGCAGTTAACGCAATAATGCTGAGAACCGAGTATGATAATAATACACAGT * NM: i: 0 AS: i: 864
Ja siin on sama ärakirja FBtr0344900
kaardistamine, mille andis STAR - tarkvara, mis annab joondamisest teada just nii, nagu mul seda vaja on:
kass star_aln.sam | grep FBtr0344900
FBtr0344900 0 4 42774 255 384M73N144M * 0 * NH: i: 1 HI: i: 1 NM: i: 0 MD: Z: 528
arutelust autor, tundub, et ma ei saa praegusest LAST versioonist otse vajalikku ega ole tehniline probleem. Seega pean väljundit ise modifitseerima. Eesmärk oleks saada vähemalt CIGAR-rida, mis esindaks täielikku ärakirja.
Minu küsimus on, kas teate mõnda tarkvara selleks? Vaja oleks faili, mis sisaldab ühte rida kordumatult kaardistatud ärakirjade kohta ja sisaldab kolme välja: transcript_ID
, start position
ja CIGAR string
.
Ma toimisin järgmiselt:
1) eraldage SAM-failist huvitatavad väljad:
$ cut -f1,4,6FBtr0344900 42774 384 = 144HFBtr0344900 43231 384H144 =
2) jagage rida CIGAR, et eemaldada üksused, mis mind ei huvita - lihtsustan siin käsku, eeldades, et mul on ainult täiuslikud vasted (mis mind huvitavad) ja kõvasti lõigatud (mis mind ei huvita):
$ cut -f3 | sed 's / H / _ / g' | sed 's / = / = / g' | sed 's / \ w * _ \ s * //' | sed 's / = // g'384144
3) kleepige muudetud sigar originaalfaili koos koodiga paste
, mille tulemuseks on:
$ paste (1) (2) | lõika -f1,2,4FBtr0344900 42774 384FBtr0344900 43231 144
4) ühendage read, mis algavad ba sama transcript_id
:
$ awk -F '\ t' -v OFS = '\ t' '{x = 1 dollar; $ 1 = ""; a [x] = a [x] $ 0} LÕPP {for (x in a) print x, a [x]} '| FBtr0344900 42774 384 43231 144
5) arvutage uus sigar, arvutades introni pikkuse aritmeetilise valemina intron_length = (next_exon_start_coordinate - exon_length - previous_exon_start_coordinate)
, selles ülaltoodud lihtne juhtum: intron_length = 43231-384-42774
$ awk '{printf ("% s", $ 1)}; {for (i = 4; i< = NF; i + = 2) {printf ("% s% d% s% d", OFS, $ (i-1), OFS, $ i - $ (i-1) - $ (i-2))}}; {printf ("% s% d% s% s", OFS, $ NF, OFS, RS)} 'FBtr0344900 384 73 144
6) ideaalis, mõne meetodiga, mille ma teen aru saada, ma muudan stringi CIGAR (lisades iga välja, välja arvatud esimese välja, alternatiivse M, N, nii peaks lõplik fail välja nägema:
FBtr0344900 42774 384M73N144M
Minu põhiline lähenemisviis on järgmine:
- Ma pole kindel, kuidas arveldada 1-põhist SAM-i: kas peaksin lisama
+ 1
igaexon_start_coordinate
juures? Ei näe välja, kuna STAR-väljundil on täpselt sama sigaristring, mille arvutasin STAR-i väljundi järgi. - SUUR probleem: see töötab ainult ettepoole suunatud kaardil olevate lugemite puhul: kuidas muuta see tagurpidi ühendatud kaardil olevate lugudega teostatavaks? Kui jätkan oma praeguse lähenemisviisi, on mul introni negatiivsed suurused ...
Kõik soovitused on teretulnud!