知识的价值不在于占有,而在于使用。

生信自学网-速科生物-生物信息学数据库挖掘视频教程

当前位置: 主页 > ICGC >

SNP突变数据整理perl脚本ICGC数据库

时间:2019-07-30 11:26来源:生信自学网 作者:乐伟 点击:
从ICGC数据库下载了SNP数据之后,我们需要提取我们需要的数据,整理成突变数据矩阵
得到突变数据之后,数据里面含有病人ID、实验ID等信息,还有我们非常关注的突变影响的基因,原始下载的是ensembl ID,我们希望把ensembl ID转换为我们常见的gene symbol,以便做后续的分析。

这一步操作,需要实现两个目的,一个是删除没有发生氨基酸改变的突变;一个是ensembl ID转换为gene symbol。操作用到的是perl脚本,脚本是我们生信自学网原创的Perl脚本。

my $gtfFile="human.gtf";
my $outFile="mutation.ann.txt";
my $snpFile=$ARGV[0];
chomp($snpFile);

my %ensemblHash=();
open(RF,"$gtfFile") or die $!;
while(my $line=<RF>)
{
	chomp($line);
	if($line=~/gene_id \"(.+?)\"\;.+gene_name "(.+?)"\;.+gene_biotype \"(.+?)\"\;/)
	{
		      my $ensembl=$1;
		      my $symbol=$2;
		      my $biotype=$3; 
		      $ensemblHash{$ensembl}=$symbol;
	}
...
...
获取源码请联系微信:18520221056
或者购买生信自学网课程:
接下需要把突变矩阵提取出来,突变矩阵行名是gene,列名是实验ID和样本ID结合,数据就是突变信息。同时我们也希望知道每个基因在样本突变的频率,也就是在分析的时候,需要做一下统计分析。

在统计基因突变的表格里,我们看到了几个常见的突变基因,比如TP53,说明生信分析的结果是有研究价值的,也符合已发表的文献和报导。

use strict;
use warnings;

my $file="mutation.ann.txt";
my %hash=();
my @sampleArr=();
my %sampleHash=();
my $gene="all";
my %fieldHash=();
	
open(RF,"$file") or die $!;
while(my $line=<RF>){
		next if($line=~/^\n/);
		chomp($line);
		my @arr=split(/\t/,$line);
		if($.==1){
				for(my $i=0;$i<=$#arr;$i++){
							$fieldHash{$arr[$i]}=$i;
				}
				next;
...
...
获取源码请联系微信:18520221056
购买课程获取源码

购买ICGC数据库挖掘新课程:
《ICGC数据库挖掘SNP突变数据》

加生信自学网群
责任编辑:伏泽
作者申明:本文版权属于生信自学网(微信号:18520221056)未经授权,一律禁止转载!
BioWolf二维码生成器
------分隔线----------------------------
GEO芯片数据库挖掘生信视频教程
推荐内容
TCGA数据库挖掘文章套路生信视频教程
中药复方网络药理学文章套路生信视频教程