我正在使用mm10分析小鼠的RNAseq数据。我开始使用tophat2 / bowtie。然后我运行袖扣来生成基因和异构体的FPKM。我在第二列以及基因名称旁边的行内使用了具有基因型(即,它是假基因,蛋白质编码,snRNA,lincRna ......)的gtf文件。我的GTF的一行示例是:
1 unprocessed_pseudogene exon 3054233 3054733 . + . exon_id "ENSMUSE00000848981"; exon_number "1"; gene_biotype "pseudogene"; gene_id "ENSMUSG00000090025"; gene_name "Gm16088"; gene_source "havana"; tag "mRNA_start_NF"; transcript_id "ENSMUST00000160944"; transcript_name "Gm16088-001"; transcript_source "havana"; tss_id "TSS82763"; 1 unprocessed_pseudogene transcript 3054233 3054733 . + . gene_biotype "pseudogene"; gene_id "ENSMUSG00000090025"; gene_name "Gm16088"; gene_source "havana"; tag "mRNA_start_NF"; transcript_id "ENSMUST00000160944"; transcript_name "Gm16088-001"; transcript_source "havana"; tss_id "TSS82763"; 1 snRNA exon 3102016 3102125 . + . exon_id "ENSMUSE00000522066"; exon_number "1"; gene_biotype "snRNA"; gene_id "ENSMUSG00000064842"; gene_name "Gm26206"; gene_source "ensembl"; transcript_id "ENSMUST00000082908"; transcript_name "Gm26206-201"; transcript_source "ensembl"; tss_id "TSS81070"; 1 snRNA transcript 3102016 3102125 . + . gene_biotype "snRNA"; gene_id "ENSMUSG00000064842"; gene_name "Gm26206"; gene_source "ensembl"; transcript_id "ENSMUST00000082908"; transcript_name "Gm26206-201"; transcript_source "ensembl"; tss_id "TSS81070";
我的袖扣基因和异构体跟踪输出文件如下所示:
tracking_id class_code nearest_ref_id gene_id gene_short_name tss_id locus length coverage FPKM FPKM_conf_lo FPKM_conf_hi FPKM_status ENSMUSG00000090025 - - ENSMUSG00000090025 Gm16088 TSS82763 1:3054232-3054733 - - 0 0 0 OK ENSMUSG00000064842 - - ENSMUSG00000064842 Gm26206 TSS81070 1:3102015-3102125 - - 0 0 0 OK ENSMUSG00000025900 - - ENSMUSG00000025900 Rp1 TSS11475 1:4343506-4360314 - - 0 0 0 OK ENSMUSG00000088333 - - ENSMUSG00000088333 Gm22848 TSS18078 1:3783875-3783933 - - 0 0 0 OK ENSMUSG00000025902 - - ENSMUSG00000025902 Sox17 TSS56047,TSS74369 1:4490927-4496413 - - 0.611985 0.394887 0.829082 OK ENSMUSG00000051951 - - ENSMUSG00000051951 Xkr4 TSS1201,TSS70682,TSS88403 1:3205900-3671498 - - 0 0 0 OK
如您所见,它缺少gtf的第二列,表示基因产物的类型。反正有没有袖扣自动将其合并到其输出文件中?除非我错过它,否则似乎没有一个简单的命令。请指教 -
答案 0 :(得分:0)
我尝试了几种方法让它在运行袖扣时直接运行但没有工作(如果有人有解决方案,请告诉我)。但是,我找到了解决方法。我做的是以下内容: 1-运行所有cufflinks命令后,将FPKM列的数据合并到另一个文件(我有一个为此编写的脚本 - 如果有人想要它,请告诉我)。 2-从UCSC表浏览器下载功能表 3-使用以下命令将该列添加到上面的合并输出
Comb_Iso = pd.read_csv('Combined.Isoforms.txt', sep='\t') # reads in combined cufflinks output
fnc_library = pd.read_csv(args.library, sep='\t', usecols=[0,1] ) #only takes first 2 columns #reads in the path to the function library
Comb_Iso_fnc = Comb_Iso.merge(fnc_library, on='TranscriptID', how='left') #merges them
ncol_CIF = len(Comb_Iso_fnc.columns)
df_iso=Comb_Iso_fnc.iloc[:,[0, 1, ncol_CIF-1] + list(range(2,ncol_CIF-1))]
df_iso.to_csv(args.output_combined.strip()+'.Isoforms.txt', index=False, sep="\t") #generates the output.
现在的输出示例是:
TranscriptID GeneID Function GeneName TSS-ID Locus-ID ExampleHeader1 ExampleHeader2 ExampleHeader3 ENSMUST00000115488 ENSMUSG00000088000 protein_coding Gm25493 TSS84820 1:4723276-4723379 9 9 9 ENSMUST00000027042 ENSMUSG00000096126 protein_coding Gm22307 TSS39629 1:4529016-4529123 8 8 8 ENSMUST00000140302 ENSMUSG00000025902 Test2 Sox17 TSS56047,TSS74369 1:4490927-4496413 5 5 5 ENSMUST00000115484 ENSMUSG00000051951 protein_coding Xkr4 TSS1201,TSS70682,TSS88403 1:3205900-3671498 6 6 6 ENSMUST00000135046 ENSMUSG00000089699 protein_coding Gm1992 TSS23899 1:3466586-3513553 7 -7 -7 ENSMUST00000132064 ENSMUSG00000025900 linc Rp1 TSS11475 1:4343506-4360314 3 -3 -3 ENSMUST00000072177 ENSMUSG00000090025 Gm16088 TSS82763 1:3054232-3054733 1 1 1 ENSMUST00000082125 ENSMUSG00000064842 protein_coding Gm26206 TSS81070 1:3102015-3102125 2 2 2
您可以在第3列中看到该功能。 很高兴分享我的任何脚本来组合袖口(尽管这些可能不是最好的,仍在努力优化)如果你想要它们。