Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- use strict;
- use warnings;
- use Vcf;
- my $filename = $ARGV[0];
- open ( my $handle, "<", $filename);
- my $vcf = Vcf->new(fh=>$handle);
- $vcf->parse_header();
- vcf_iterate();
- sub vcf_iterate
- {
- while ( my $x=$vcf->next_data_hash() )
- {
- foreach my $sample ( keys $$x{gtypes} )
- {
- print "SAMPLE=$sample, genotype_raw=$$x{gtypes}{$sample}{GT}, ";
- my $decoded_genotype = decode_genotype($x, $sample);
- print "decoded_genotype=$decoded_genotype\n";
- }
- }
- }
- sub decode_genotype
- {
- my ( $x, $sample ) = ( $_[0], $_[1] );
- my $gt = $vcf->decode_genotype($$x{REF}, $$x{ALT}, $$x{gtypes}{$sample}{GT}); # returns 'G/G'
- return $gt;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement