根据SNP的位置从基因组提取上下游序列
代码如下:
#!/usr/bin/perl -wuse strict;die "perl $0 <vcf> <genome>" if(@ARGV == 0);#Author:yueyao@genomics.cnmy $vcf=shift; my $genome=shift;my%hash; my $id; open GENOME,$genome or die $!; while(<GENOME>){chomp;if(/^>/){$id=$_;$id=~s/>//;$id=~s/ //g;}else{$hash{$id} .= $_;} } close GENOME;my@temp; my$pos; my$start; my$end; my$len; my$seq; my$fetchseq; my($refindelseq,$altindelseq,$upseq,$downseq,$downstart,$refindellen,$upend,$upstart); open VCF,$vcf or die $!; while(<VCF>){chomp;next if(/^Chr/);@temp=split/\t/;if(exists $hash{$temp[0]}){$seq=$hash{$temp[0]};$pos=$temp[1];$refindelseq=$temp[3];$altindelseq=$temp[4];$refindellen=length($refindelseq);$upstart=$pos-1-100;$upend=$pos-1;$upseq=substr($seq,$upstart,100);$downstart=$pos+$refindellen-1;$downseq=substr($seq,$downstart,100);$end=$pos+100+$refindellen-1;print "$_\t>$temp[0]_$upstart\_$end\t$upseq\[$refindelseq/$altindelseq\]$downseq\n"} } close VCF;
转载于:https://www.cnblogs.com/raisok/p/11457083.html
根据SNP的位置从基因组提取上下游序列相关推荐
- R语言丨根据VCF文件设计引物,自动识别两样本差异SNP位点,调用samtools获取上下游参考序列
根据变异位点设计引物序列 今天碰到一个新问题:假如有一个vcf文件储存了两个样品的变异位点基因型数据,每行代表一个位点,我现在想找出两样本差异的SNP位点,再把差异位点用[REF/ALT]的形式表示, ...
- 根据 基因名、bed 文件的基因位置,提取 DNA 序列 bedtools
根据 基因名.bed 文件的基因位置,提取 DNA 序列 bedtools 1.根据 Gene Symbol 查找在序列上的位置 2.根据 基因位置 提取参考上的序列 1.根据 Gene Symbol ...
- 2022.03.24【基因组组装】|获取比对到参考基因组的contig序列
文章目录 摘要 工具与方法 操作方法 step.1 构建参考基因组数据库 step.2 比对序列 step.3 获取query_id step.4 获取比对序列 结果展示 摘要 很久没有整理工作笔记了 ...
- 全基因组多位点序列分型
简介 多位点序列分型(multilocus sequence typing, MLST)是一种基于核酸序列测定的细菌分型方法.这种方法通过PCR扩增多个管家基因内部片段并测定其序列,分析菌株的变异.M ...
- 利用Bio.SeqIO提取基因组中特定序列时注意事项
例如: from Bio import SeqIO # 读取基因组文件 fa_seq = SeqIO.read(fasta_t_path+'\\genome.fasta', "fasta&q ...
- SNP位点上下游序列查找1.0 2020-9-27
换账号重新发布orz /** Author:Henriette-L(luanxito@163.com)* Date: 2020-9-27* Introduction: (等我有空补)简单来说给定SNP ...
- python按位置从字符串提取子串的操作是_Python基础-字符串操作和“容器”的操作...
星火:Python基础-IF和循环zhuanlan.zhihu.com星火:Python基础-函数zhuanlan.zhihu.com星火:Python基础-模块zhuanlan.zhihu.c ...
- databasemetadata获取表注释_宏基因组测序中短序列的注释
宏基因组中短序列的注释是理解测序微生物群落潜在功能的重要步骤之一.单纯利用局部匹配的注释容易混淆那些蛋白同源性且局部序列非常相似的序列,进而不能真实准确反映复杂蛋白质家族中多变的结构和功能域. 今天我 ...
- BWA比对及Samtools提取目标序列
今天想看一下自己的序列里面会不会有某细菌基因组存在,主要使用BWA和Samtools: bwa主要用于将低差异度的短序列与参考基因组进行比对.主要包含三种比对算法:backtrack.SW和MEM,第 ...
最新文章
- shell脚本的命令行传参
- 比特币挖矿——区块链技术
- SmartNIC/DPU — 技术方向
- cannot be registered to your development team. Change your bundle identifier to a unique string to t
- Java—接口与抽象类
- MyBatis-学习笔记11【11.Mybatis的缓存】
- 嵌入式Linux系统中的.lds链接脚本基础
- oracle asm 异机挂载,oracle 异机恢复 从asm到文件系统成功实例
- 电脑睡眠快捷键_电脑快速进入睡眠的快捷键是什么?
- 硬盘序列号查询软件_【西数硬盘购买指南】干货——西数移动硬从购买到验证体会心得...
- 1.Echarts的坑:切换tab时,echart显示默认的100px
- 函数头模板_Python新手爬虫,爬取PPT模板
- hdu1403(后缀数组模板)
- authware_在yonohub上轻松使用autoware auto
- 使用Unified Communications Managed API获取Lync在线会议的链接地址
- python 密码输入显示星号_[145]python实现控制台密码星号输入
- linux系统部署ffmpeg视频转码环境及使用方法
- C++中UTF-8, Unicode, GB2312转换及有无BOM相关问题
- 瑞萨linux编译环境,瑞萨RZ/A2M Linux4.19系统构建与驱动移植纪实之一:BSP环境搭建...
- fMRI脑影像特征提取——Pearson相关与低阶功能连接LOFC(dpabi+nilearn)