Advertisement
Guest User

Untitled

a guest
Mar 31st, 2015
224
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.63 KB | None | 0 0
  1. use strict;
  2. use warnings;
  3. use Vcf;
  4.  
  5. my $filename = $ARGV[0];
  6.  
  7. open ( my $handle, "<", $filename);
  8. my $vcf = Vcf->new(fh=>$handle);
  9. $vcf->parse_header();
  10. vcf_iterate();
  11.  
  12. sub vcf_iterate
  13. {
  14. while ( my $x=$vcf->next_data_hash() )
  15. {
  16. foreach my $sample ( keys $$x{gtypes} )
  17. {
  18. print "SAMPLE=$sample, genotype_raw=$$x{gtypes}{$sample}{GT}, ";
  19. my $decoded_genotype = decode_genotype($x, $sample);
  20. print "decoded_genotype=$decoded_genotype\n";
  21. }
  22. }
  23. }
  24.  
  25. sub decode_genotype
  26. {
  27. my ( $x, $sample ) = ( $_[0], $_[1] );
  28. my $gt = $vcf->decode_genotype($$x{REF}, $$x{ALT}, $$x{gtypes}{$sample}{GT}); # returns 'G/G'
  29. return $gt;
  30. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement