#!/usr/bin/perl
use strict;
use warnings;
use File::Basename;
open (OUT, ">text.file")|| die "can not open the text.file\n";
my %data;
my @files = glob "*.vcf";
for my $file (@files) {
my $file_name = basename ($file);
print "$file_name\n";
open my $fh, '<', $file or die $!;
while (<$fh>) {
next if /^\s*$/;
next if /^gene_number/;
next if /^#/;
$_ =~s/[\n\r]//g;
my @array = split/\t/,$_;
my ($num, $pos, $snp) =($array[0],$array[1],$array[3]."|".$array[4]);
print "$num\t$pos\t$snp\n";
chomp;
#my ($num, $pos, $snp) = split;
$data{$num}{$pos}{$file_name} = $snp;
}
close $fh;
}
print OUT"reference\tposition";
for my $file (sort @files) {
my $file_name = basename ($file);
my @new_file_name=split/_/,$file_name;
print OUT"\t$new_file_name[0]";
}
print OUT"\n";
for my $num (sort keys %data) {
for my $pos (sort keys %{$data{$num}}) {
print OUT"$num\t$pos";
for my $file (sort @files) {
my $file_name = basename ($file);
if (exists $data{$num}{$pos}{$file_name})
{
print OUT"\t$data{$num}{$pos}{$file_name}";
} else
{
print OUT"\t.";
}
}
print OUT"\n";
}
}
批量处理
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 有些时候,我们不仅要对一张图片进行处理,可能还会对一批图片处理。这时候,我们可以通过循环来执行处理,也可以调用程序...
- 近日处理了一批照片,现在分享一下如何在mac平台进行图片批量处理。 处理的目标 尺寸压缩 文件大小压缩 准备 br...