indel vcf文件如何转化为SNPT输入文件
发表于:2025-11-06 作者:千家信息网编辑
千家信息网最后更新 2025年11月06日,indel vcf文件如何转化为SNPT输入文件,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。如何将indel vcf文件转换为SN
千家信息网最后更新 2025年11月06日indel vcf文件如何转化为SNPT输入文件
indel vcf文件如何转化为SNPT输入文件,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
如何将indel vcf文件转换为SNPT软件的输入文件。
SNP指纹图谱软件SNPT ,这里记录一下如何将indel vcf文件转换为SNPT软件的输入文件。
命令如下:
perl /share/work/wangq/script/vcf/vcf_SNPT.indel.pl -vcf clean.vcf -o SNPT.input.txt
vcf_SNPT.indel.pl脚本如下:
#!/share/nas2/genome/bin/perl -w#use strict;#use warnings;use Getopt::Long;use List::Util qw(shuffle);use Data::Dumper;use FindBin qw($Bin $Script);use File::Basename qw(basename dirname);use Cwd qw(abs_path);my $version="1.0.0";my $BEGIN_TIME=time();my @Original_ARGV=@ARGV;# ==============================================================# Get Options# ==============================================================my ($infile, $indexOut, $p);GetOptions( "help|?" =>\&USAGE, "vcf:s"=>\$infile, "o:s"=>\$out ) or &USAGE;&USAGE unless ($infile and $out);sub USAGE {# my $usage=<<"USAGE";Program: $0Version: $version==================================================================================================Discription: This script is used to calculate thresold for BSA using SNP-INDEX method==================================================================================================Usage: Options: -vcf required vcf list file -o required output fileUSAGE print $usage; exit;}#===============================================================# Default optional value#===============================================================open (IN, "<$infile") || die "$infile: $!\n";open (OUT, ">$out") || die "$out: $!\n";my @sample;my %snp;my @indel;while(){ chomp; next if(/^##/); my ($chr,$pos,$id,$ref,$alt,$qual,$filter,$info,$format,@line) = split(/\t/,$_); if(/^#/){ @sample = @line; next; } my @array = $_=~/\t([\.0123][\/\|][\.0123])/g; if(@array != @sample ){ print "SNP $chr,$pos length not eq.\n"; next; } my $chr_indel= "$chr-$pos"; push(@indel,$chr_indel); for(my$i =0; $i<@line ;$i++){ my $str; if($array[$i] eq "0/0" || $array[$i] eq "0|0" ){ $str = "A"; }elsif($array[$i] eq "0/1" || $array[$i] eq "0|1" ){ $str = "C"; }elsif($array[$i] eq "1/1" || $array[$i] eq "1|1" ){ $str = "G"; }else{ $str = "T"; } $snp{$chr_indel}{$sample[$i]} = $str; }}close(IN);print OUT join("\t","Strain",@indel)."\t";for($i=0; $i < @sample ; $i++){ print OUT "$sample[$i]"; for($j=0; $j < @indel ; $j++){ #print "1"; print OUT "\t$snp{$indel[$j]}{$sample[$i]}"; } print OUT "\n";}close(OUT); 关于indel vcf文件如何转化为SNPT输入文件问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。
文件
输入
软件
问题
更多
帮助
解答
易行
简单易行
内容
命令
图谱
小伙
小伙伴
指纹
方法
知识
篇文章
脚本
行业
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网站服务器架设成本
hb软件开发下载
网络安全教育知识10条
一个服务器集群的性能
哪些对象用数据库连接
软件开发与编程难度
应用软件开发需要什么
扬州大型软件开发价格多少
数据库试题及答案
sql更新数据库代码
中国比较大的软件开发公司
济南浪潮软件开发工资
厦门优思软件开发
数据库比较图
丝路网络技术有限公司
怎么进入服务器主机
常用的网络技术名称
查询数据库是否正版
随从大师连不上档案服务器
数据库表怎么实现多表关联
网络安全宣传周图片 漫画
discuz 查看数据库
HP服务器管理口重启
管理软件开发使用啥语言
几岁才开始学网络安全
数据库 磁盘页
iphone13 无法验证服务器身份
新斗罗大陆神界服务器
贵州网络安全培训简单易学
数据库表怎么实现多表关联