David J Craigon > Bio-Affymetrix-0.1 > Bio::Affymetrix::CDF-

Download:
Bio-Affymetrix-0.1.tar.gz

Annotate this POD

CPAN RT

Open  0
Report a bug
Source   Latest Release: Bio-Affymetrix-0.5

NAME ^

Bio::Affymetrix::CDF- parse Affymetrix CDF files

SYNOPSIS ^

use Bio::Affymetrix::CDF;

# Parse the CDF file

my $cdf=new CDF();

$cdf->parse_from_file("foo.cdf");

# Find some fun facts about this chip type

print $cdf->rows().",".$cdf->cols()."\n";

print $cdf->version()."\n";

# Print out all of the probeset names on this chip type

foreach my $i (@{$chp->probesets}) { print $i->name()."\n"; }

DESCRIPTION ^

The Affymetrix microarray system produces files in a variety of formats. If this means nothing to you, these modules are probably not for you :). This module parses CDF files. Use this module if you want to find out about the design of an Affymetrix CHP, or you need the object for another one of the modules in this package.

All of the Bio::Affymetrix modules parse a file entirely into memory. You therefore need enough memory to hold these objects. For some applications, parsing as a stream may be more appropriate- hopefully the source to these modules will give enough clues to make this an easy task. This module in particular takes a lot of memory if probe information is also stored (about 150Mb). Memory usage is not too onorous (about 15Mb) if probe level information is omitted.

HINTS

You fill the object filled with data using the parse_from_filehandle, parse_from_string or parse_from_file routines. You can get/set various statistics using methods on the object.

The key method is probesets. This returns an array of Bio::Affymetrix::CDF::Probeset objects. These contain data about the probesets.

NOTES ^

REFERENCE

Modules were written with the official Affymetrix documentation, which can be located at http://www.affymetrix.com/support/developer/AffxFileFormats.ZIP

COMPATIBILITY

This module can parse the CDF files produced by the Affymetrix software MAS 5 only. This is different from the Bio::Affymetrix::CHP module. These files have QC information in them, which is thrown away.

TODO ^

Writing CDF files as well as reading them. Parsing GCOS v1.2 CDF files. Maybe parse QC information?

COPYRIGHT ^

Copyright (C) 2004 by Nick James, David J Craigon, NASC, The University of Nottingham

This module is free software. You can copy or redistribute it under the same terms as Perl itself.

Affymetrix is a registered trademark of Affymetrix Inc., Santa Clara, California, USA.

AUTHORS ^

Nick James (nick at arabidopsis.info)

David J Craigon (david at arabidopsis.info)

Nottingham Arabidopsis Stock Centre (http://arabidopsis.info), University of Nottingham.

METHODS ^

new

  Arg [0]    : none
  Example    : my $cdf=new Bio::Affymetrix::CDF();
  Description: constructor for CDF object
  Returntype : new Bio::Affmetrix::CDF object
  Exceptions : none
  Caller     : general

original_version Arg [0] : none Example : my $version=$cdf->original_version() Description: Returns the version of the CDF file parsed. Encoded in file. Returntype : string Exceptions : none Caller : general

original_format Arg [0] : none Example : my $format=$cdf->original_format() Description: Returns the format of the CDF file parsed. Currently MAS5 only Returntype : string ("MAS5") Exceptions : none Caller : general

name Arg [1] : string $name (optional) Example : my $name=$cdf->name() Description: Get/set the name of this chip type (e.g. ATH1-121501) Returntype : string Exceptions : none Caller : general

rows Arg [1] : integer $rows (optional) Example : my $name=$cdf->rows() Description: Get/set the number of rows in this chip Returntype : integer Exceptions : none Caller : general

cols Arg [1] : integer $cols (optional) Example : my $name=$cdf->cols() Description: Get/set the number of cols in this chip Returntype : integer Exceptions : none Caller : general

probesets Arg [1] : arrayref $probesets Example : my @probesets=@{$cdf->probesets()} Description: Get the probesets on the array Returntype : an reference to an array of Bio::Affymetrix::CDF::Probeset objects (q.v.) Exceptions : none Caller : general

original_number_of_probes Arg [0] : none Example : my $number_of_probes=$cdf->original_number_of_probes() Description: Get the number of probesets on the array, as listed originally in the file. A better way is to do my $q=scalar(@{$cdf->probesets()}); if you want a current count. Returntype : integer Exceptions : none Caller : general

original_max_unit Arg [0] : none Example : my $max_units=$cdf->original_max_units() Description: Get the max unit number in the CDF file. Fairly useless. Returntype : integer Exceptions : none Caller : general

original_num_qc_units Arg [0] : none Example : my $max_units=$cdf->original_num_qc_units() Description: Get the number of QC units in the CDF file. Only piece of QC information obtainable using this piece of software. Returntype : integer Exceptions : none Caller : general

parse_from_string

  Arg [1]    :  string
  Example    :  $cdf->parse_from_string($cdf_file_in_a_string);
  Description:  Parse a CDF file from a buffer in memory
  Returntype :  none
  Exceptions :  none
  Caller     :  general

parse_from_file

  Arg [1]    :  string
  Example    :  $cdf->parse_from_file($cdf_filename);
  Description:  Parse a CDF file from a file
  Returntype :  none
  Exceptions :  dies if can't open file
  Caller     :  general

parse_from_filehandle

  Arg [1]    :  reference to filehandle
  Example    :  $cdf->parse_from_filehandle(\*STDIN);
  Description:  Parse a CDF file from a filehandle
  Returntype :  none
  Exceptions :  none
  Caller     :  general