Perl脚本练习
通过数组和哈希引用读取存储复杂数据
要求
gff文件,记录每个基因的名称、起始终止位置、染色体、转录本信息
数据
#注释行
分割:\t
9列:gff格式
思路
- 构建一个哈希,结构
my%gene = (
geneID => {
'location' => [chrs, start, end]
'transcripts' => [
{
'mRNAID' => 111,
'chr' => 111,
'start' => 111,
'end' =>111
}
]
}
)
- 按行读入gff,split,判断注释信息类型,如果为gene,将染色体和位置信息存入以基因ID命名的键中
- 如果为mRNA,捕获位置信息,ID和parent信息,根据parent信息将mRNA信息放入对应基因的键中