Last data update: 2014.03.03

R: Applies a function over the groups in a CDF structure
applyCdfGroupsR Documentation

Applies a function over the groups in a CDF structure

Description

Applies a function over the groups in a CDF structure.

Usage

applyCdfGroups(cdf, fcn, ...)

Arguments

cdf

A CDF list structure.

fcn

A function that takes a list structure of group elements and returns an updated list of groups.

...

Arguments passed to the fcn function.

Value

Returns an updated CDF list structure.

Pre-defined restructuring functions

  • Generic:

    • cdfGetFields() - Gets a subset of groups fields in a CDF structure.

    • cdfGetGroups() - Gets a subset of groups in a CDF structure.

    • cdfOrderBy() - Orders the fields according to the value of another field in the same CDF group.

    • cdfOrderColumnsBy() - Orders the columns of fields according to the values in a certain row of another field in the same CDF group.

  • Designed for SNP arrays:

    • cdfAddBaseMmCounts() - Adds the number of allele A and allele B mismatching nucleotides of the probes in a CDF structure.

    • cdfAddProbeOffsets() - Adds probe offsets to the groups in a CDF structure.

    • cdfGtypeCelToPQ() - Function to immitate Affymetrix' gtype_cel_to_pq software.

    • cdfMergeAlleles() - Function to join CDF allele A and allele B groups strand by strand.

    • cdfMergeStrands() - Function to join CDF groups with the same names.

We appreciate contributions.

Author(s)

Henrik Bengtsson

Examples

##############################################################
if (require("AffymetrixDataTestFiles")) {            # START #
##############################################################

cdfFile <- findCdf("Mapping10K_Xba131")

# Identify the unit index from the unit name
unitName <- "SNP_A-1509436"
unit <- which(readCdfUnitNames(cdfFile) == unitName)

# Read the CDF file
cdf0 <- readCdfUnits(cdfFile, units=unit, stratifyBy="pmmm", readType=FALSE, readDirection=FALSE)
cat("Default CDF structure:\n")
print(cdf0)

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Tabulate the information in each group
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
cdf <- readCdfUnits(cdfFile, units=unit)
cdf <- applyCdfGroups(cdf, lapply, as.data.frame)
print(cdf)

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Infer the (true or the relative) offset for probe quartets.
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
cdf <- applyCdfGroups(cdf0, cdfAddProbeOffsets)
cat("Probe offsets:\n")
print(cdf)

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Identify the number of nucleotides that mismatch the
# allele A and the allele B sequences, respectively.
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
cdf <- applyCdfGroups(cdf, cdfAddBaseMmCounts)
cat("Allele A & B target sequence mismatch counts:\n")
print(cdf)



# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Combine the signals from  the sense and the anti-sense
# strands in a SNP CEL files.
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# First, join the strands in the CDF structure.
cdf <- applyCdfGroups(cdf, cdfMergeStrands)
cat("Joined CDF structure:\n")
print(cdf)


# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Rearrange values of group fields into quartets.  This
# requires that the values are already arranged as PMs and MMs.
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
cdf <- applyCdfGroups(cdf0, cdfMergeAlleles)
cat("Probe quartets:\n")
print(cdf)


# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Get the x and y cell locations (note, zero-based)
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
x <- unlist(applyCdfGroups(cdf, cdfGetFields, "x"), use.names=FALSE)
y <- unlist(applyCdfGroups(cdf, cdfGetFields, "y"), use.names=FALSE)

# Validate
ncol <- readCdfHeader(cdfFile)$cols
cells <- as.integer(y*ncol+x+1)
cells <- sort(cells)

cells0 <- readCdfCellIndices(cdfFile, units=unit)
cells0 <- unlist(cells0, use.names=FALSE)
cells0 <- sort(cells0)

stopifnot(identical(cells0, cells))

##############################################################
}                                                     # STOP #
##############################################################

Results


R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> library(affxparser)
> png(filename="/home/ddbj/snapshot/RGM3/R_BC/result/affxparser/applyCdfGroups.Rd_%03d_medium.png", width=480, height=480)
> ### Name: applyCdfGroups
> ### Title: Applies a function over the groups in a CDF structure
> ### Aliases: applyCdfGroups applyCdfBlocks
> ### Keywords: programming
> 
> ### ** Examples
> 
> ##############################################################
> if (require("AffymetrixDataTestFiles")) {            # START #
+ ##############################################################
+ 
+ cdfFile <- findCdf("Mapping10K_Xba131")
+ 
+ # Identify the unit index from the unit name
+ unitName <- "SNP_A-1509436"
+ unit <- which(readCdfUnitNames(cdfFile) == unitName)
+ 
+ # Read the CDF file
+ cdf0 <- readCdfUnits(cdfFile, units=unit, stratifyBy="pmmm", readType=FALSE, readDirection=FALSE)
+ cat("Default CDF structure:\n")
+ print(cdf0)
+ 
+ # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+ # Tabulate the information in each group
+ # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+ cdf <- readCdfUnits(cdfFile, units=unit)
+ cdf <- applyCdfGroups(cdf, lapply, as.data.frame)
+ print(cdf)
+ 
+ # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+ # Infer the (true or the relative) offset for probe quartets.
+ # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+ cdf <- applyCdfGroups(cdf0, cdfAddProbeOffsets)
+ cat("Probe offsets:\n")
+ print(cdf)
+ 
+ # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+ # Identify the number of nucleotides that mismatch the
+ # allele A and the allele B sequences, respectively.
+ # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+ cdf <- applyCdfGroups(cdf, cdfAddBaseMmCounts)
+ cat("Allele A & B target sequence mismatch counts:\n")
+ print(cdf)
+ 
+ 
+ 
+ # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+ # Combine the signals from  the sense and the anti-sense
+ # strands in a SNP CEL files.
+ # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+ # First, join the strands in the CDF structure.
+ cdf <- applyCdfGroups(cdf, cdfMergeStrands)
+ cat("Joined CDF structure:\n")
+ print(cdf)
+ 
+ 
+ # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+ # Rearrange values of group fields into quartets.  This
+ # requires that the values are already arranged as PMs and MMs.
+ # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+ cdf <- applyCdfGroups(cdf0, cdfMergeAlleles)
+ cat("Probe quartets:\n")
+ print(cdf)
+ 
+ 
+ # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+ # Get the x and y cell locations (note, zero-based)
+ # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+ x <- unlist(applyCdfGroups(cdf, cdfGetFields, "x"), use.names=FALSE)
+ y <- unlist(applyCdfGroups(cdf, cdfGetFields, "y"), use.names=FALSE)
+ 
+ # Validate
+ ncol <- readCdfHeader(cdfFile)$cols
+ cells <- as.integer(y*ncol+x+1)
+ cells <- sort(cells)
+ 
+ cells0 <- readCdfCellIndices(cdfFile, units=unit)
+ cells0 <- unlist(cells0, use.names=FALSE)
+ cells0 <- sort(cells0)
+ 
+ stopifnot(identical(cells0, cells))
+ 
+ ##############################################################
+ }                                                     # STOP #
Loading required package: AffymetrixDataTestFiles
Default CDF structure:
$`SNP_A-1509436`
$`SNP_A-1509436`$groups
$`SNP_A-1509436`$groups$`SNP_A-1509436C`
$`SNP_A-1509436`$groups$`SNP_A-1509436C`$x
   [,1] [,2] [,3] [,4] [,5]
pm  565  662  334  196  147
mm  565  662  334  196  147

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$y
   [,1] [,2] [,3] [,4] [,5]
pm  309  141  113  265   29
mm  310  142  114  266   30

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$pbase
   [,1] [,2] [,3] [,4] [,5]
pm "g"  "g"  "g"  "t"  "a" 
mm "c"  "c"  "c"  "a"  "t" 

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$tbase
   [,1] [,2] [,3] [,4] [,5]
pm "c"  "c"  "c"  "a"  "t" 
mm "c"  "c"  "c"  "a"  "t" 

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$expos
   [,1] [,2] [,3] [,4] [,5]
pm   15   16   17   18   21
mm   15   16   17   18   21


$`SNP_A-1509436`$groups$`SNP_A-1509436T`
$`SNP_A-1509436`$groups$`SNP_A-1509436T`$x
   [,1] [,2] [,3] [,4] [,5]
pm  566  663  333  195  148
mm  566  663  333  195  148

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$y
   [,1] [,2] [,3] [,4] [,5]
pm  309  141  113  265   29
mm  310  142  114  266   30

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$pbase
   [,1] [,2] [,3] [,4] [,5]
pm "g"  "g"  "a"  "t"  "a" 
mm "c"  "c"  "t"  "a"  "t" 

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$tbase
   [,1] [,2] [,3] [,4] [,5]
pm "c"  "c"  "t"  "a"  "t" 
mm "c"  "c"  "t"  "a"  "t" 

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$expos
   [,1] [,2] [,3] [,4] [,5]
pm   15   16   17   18   21
mm   15   16   17   18   21


$`SNP_A-1509436`$groups$`SNP_A-1509436C`
$`SNP_A-1509436`$groups$`SNP_A-1509436C`$x
   [,1] [,2] [,3] [,4] [,5]
pm  311  409  504   19  504
mm  311  409  504   19  504

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$y
   [,1] [,2] [,3] [,4] [,5]
pm  275  199   87  399   63
mm  276  200   88  400   64

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$pbase
   [,1] [,2] [,3] [,4] [,5]
pm "c"  "c"  "c"  "a"  "t" 
mm "g"  "g"  "g"  "t"  "a" 

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$tbase
   [,1] [,2] [,3] [,4] [,5]
pm "g"  "g"  "g"  "t"  "a" 
mm "g"  "g"  "g"  "t"  "a" 

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$expos
   [,1] [,2] [,3] [,4] [,5]
pm   15   16   17   18   21
mm   15   16   17   18   21


$`SNP_A-1509436`$groups$`SNP_A-1509436T`
$`SNP_A-1509436`$groups$`SNP_A-1509436T`$x
   [,1] [,2] [,3] [,4] [,5]
pm  312  410  503  335  505
mm  312  410  503  335  505

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$y
   [,1] [,2] [,3] [,4] [,5]
pm  275  199   87  691   63
mm  276  200   88  692   64

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$pbase
   [,1] [,2] [,3] [,4] [,5]
pm "c"  "c"  "t"  "a"  "t" 
mm "g"  "g"  "a"  "t"  "a" 

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$tbase
   [,1] [,2] [,3] [,4] [,5]
pm "g"  "g"  "a"  "t"  "a" 
mm "g"  "g"  "a"  "t"  "a" 

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$expos
   [,1] [,2] [,3] [,4] [,5]
pm   15   16   17   18   21
mm   15   16   17   18   21




$`SNP_A-1509436`
$`SNP_A-1509436`$type
[1] 2

$`SNP_A-1509436`$direction
[1] 1

$`SNP_A-1509436`$groups
$`SNP_A-1509436`$groups$`SNP_A-1509436C`
     x   y pbase tbase expos direction
1  565 309     g     c    15         1
2  565 310     c     c    15         1
3  662 141     g     c    16         1
4  662 142     c     c    16         1
5  334 113     g     c    17         1
6  334 114     c     c    17         1
7  196 265     t     a    18         1
8  196 266     a     a    18         1
9  147  30     t     t    21         1
10 147  29     a     t    21         1

$`SNP_A-1509436`$groups$`SNP_A-1509436T`
     x   y pbase tbase expos direction
1  566 309     g     c    15         1
2  566 310     c     c    15         1
3  663 141     g     c    16         1
4  663 142     c     c    16         1
5  333 114     t     t    17         1
6  333 113     a     t    17         1
7  195 265     t     a    18         1
8  195 266     a     a    18         1
9  148  30     t     t    21         1
10 148  29     a     t    21         1

$`SNP_A-1509436`$groups$`SNP_A-1509436C`
     x   y pbase tbase expos direction
1  311 276     g     g    15         2
2  311 275     c     g    15         2
3  409 200     g     g    16         2
4  409 199     c     g    16         2
5  504  88     g     g    17         2
6  504  87     c     g    17         2
7   19 400     t     t    18         2
8   19 399     a     t    18         2
9  504  63     t     a    21         2
10 504  64     a     a    21         2

$`SNP_A-1509436`$groups$`SNP_A-1509436T`
     x   y pbase tbase expos direction
1  312 276     g     g    15         2
2  312 275     c     g    15         2
3  410 200     g     g    16         2
4  410 199     c     g    16         2
5  503  87     t     a    17         2
6  503  88     a     a    17         2
7  335 692     t     t    18         2
8  335 691     a     t    18         2
9  505  63     t     a    21         2
10 505  64     a     a    21         2



Probe offsets:
$`SNP_A-1509436`
$`SNP_A-1509436`$groups
$`SNP_A-1509436`$groups$`SNP_A-1509436C`
$`SNP_A-1509436`$groups$`SNP_A-1509436C`$x
   [,1] [,2] [,3] [,4] [,5]
pm  565  662  334  196  147
mm  565  662  334  196  147

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$y
   [,1] [,2] [,3] [,4] [,5]
pm  309  141  113  265   29
mm  310  142  114  266   30

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$pbase
   [,1] [,2] [,3] [,4] [,5]
pm "g"  "g"  "g"  "t"  "a" 
mm "c"  "c"  "c"  "a"  "t" 

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$tbase
   [,1] [,2] [,3] [,4] [,5]
pm "c"  "c"  "c"  "a"  "t" 
mm "c"  "c"  "c"  "a"  "t" 

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$expos
   [,1] [,2] [,3] [,4] [,5]
pm   15   16   17   18   21
mm   15   16   17   18   21

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$hasInterrogating
[1] TRUE

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$offset
   [,1] [,2] [,3] [,4] [,5]
pm   -2   -1    0    1    4
mm   -2   -1    0    1    4


$`SNP_A-1509436`$groups$`SNP_A-1509436T`
$`SNP_A-1509436`$groups$`SNP_A-1509436T`$x
   [,1] [,2] [,3] [,4] [,5]
pm  566  663  333  195  148
mm  566  663  333  195  148

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$y
   [,1] [,2] [,3] [,4] [,5]
pm  309  141  113  265   29
mm  310  142  114  266   30

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$pbase
   [,1] [,2] [,3] [,4] [,5]
pm "g"  "g"  "a"  "t"  "a" 
mm "c"  "c"  "t"  "a"  "t" 

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$tbase
   [,1] [,2] [,3] [,4] [,5]
pm "c"  "c"  "t"  "a"  "t" 
mm "c"  "c"  "t"  "a"  "t" 

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$expos
   [,1] [,2] [,3] [,4] [,5]
pm   15   16   17   18   21
mm   15   16   17   18   21

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$hasInterrogating
[1] TRUE

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$offset
   [,1] [,2] [,3] [,4] [,5]
pm   -2   -1    0    1    4
mm   -2   -1    0    1    4


$`SNP_A-1509436`$groups$`SNP_A-1509436C`
$`SNP_A-1509436`$groups$`SNP_A-1509436C`$x
   [,1] [,2] [,3] [,4] [,5]
pm  311  409  504   19  504
mm  311  409  504   19  504

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$y
   [,1] [,2] [,3] [,4] [,5]
pm  275  199   87  399   63
mm  276  200   88  400   64

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$pbase
   [,1] [,2] [,3] [,4] [,5]
pm "c"  "c"  "c"  "a"  "t" 
mm "g"  "g"  "g"  "t"  "a" 

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$tbase
   [,1] [,2] [,3] [,4] [,5]
pm "g"  "g"  "g"  "t"  "a" 
mm "g"  "g"  "g"  "t"  "a" 

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$expos
   [,1] [,2] [,3] [,4] [,5]
pm   15   16   17   18   21
mm   15   16   17   18   21

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$hasInterrogating
[1] TRUE

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$offset
   [,1] [,2] [,3] [,4] [,5]
pm   -2   -1    0    1    4
mm   -2   -1    0    1    4


$`SNP_A-1509436`$groups$`SNP_A-1509436T`
$`SNP_A-1509436`$groups$`SNP_A-1509436T`$x
   [,1] [,2] [,3] [,4] [,5]
pm  312  410  503  335  505
mm  312  410  503  335  505

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$y
   [,1] [,2] [,3] [,4] [,5]
pm  275  199   87  691   63
mm  276  200   88  692   64

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$pbase
   [,1] [,2] [,3] [,4] [,5]
pm "c"  "c"  "t"  "a"  "t" 
mm "g"  "g"  "a"  "t"  "a" 

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$tbase
   [,1] [,2] [,3] [,4] [,5]
pm "g"  "g"  "a"  "t"  "a" 
mm "g"  "g"  "a"  "t"  "a" 

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$expos
   [,1] [,2] [,3] [,4] [,5]
pm   15   16   17   18   21
mm   15   16   17   18   21

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$hasInterrogating
[1] TRUE

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$offset
   [,1] [,2] [,3] [,4] [,5]
pm   -2   -1    0    1    4
mm   -2   -1    0    1    4




Allele A & B target sequence mismatch counts:
$`SNP_A-1509436`
$`SNP_A-1509436`$groups
$`SNP_A-1509436`$groups$`SNP_A-1509436C`
$`SNP_A-1509436`$groups$`SNP_A-1509436C`$x
   [,1] [,2] [,3] [,4] [,5]
pm  565  662  334  196  147
mm  565  662  334  196  147

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$y
   [,1] [,2] [,3] [,4] [,5]
pm  309  141  113  265   29
mm  310  142  114  266   30

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$pbase
   [,1] [,2] [,3] [,4] [,5]
pm "g"  "g"  "g"  "t"  "a" 
mm "c"  "c"  "c"  "a"  "t" 

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$tbase
   [,1] [,2] [,3] [,4] [,5]
pm "c"  "c"  "c"  "a"  "t" 
mm "c"  "c"  "c"  "a"  "t" 

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$expos
   [,1] [,2] [,3] [,4] [,5]
pm   15   16   17   18   21
mm   15   16   17   18   21

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$hasInterrogating
[1] TRUE

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$offset
   [,1] [,2] [,3] [,4] [,5]
pm   -2   -1    0    1    4
mm   -2   -1    0    1    4

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$mmACount
   [,1] [,2] [,3] [,4] [,5]
pm    0    0    0    0    0
mm    1    1    1    1    1

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$mmBCount
   [,1] [,2] [,3] [,4] [,5]
pm    1    1    1    1    1
mm    2    2    1    2    2


$`SNP_A-1509436`$groups$`SNP_A-1509436T`
$`SNP_A-1509436`$groups$`SNP_A-1509436T`$x
   [,1] [,2] [,3] [,4] [,5]
pm  566  663  333  195  148
mm  566  663  333  195  148

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$y
   [,1] [,2] [,3] [,4] [,5]
pm  309  141  113  265   29
mm  310  142  114  266   30

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$pbase
   [,1] [,2] [,3] [,4] [,5]
pm "g"  "g"  "a"  "t"  "a" 
mm "c"  "c"  "t"  "a"  "t" 

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$tbase
   [,1] [,2] [,3] [,4] [,5]
pm "c"  "c"  "t"  "a"  "t" 
mm "c"  "c"  "t"  "a"  "t" 

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$expos
   [,1] [,2] [,3] [,4] [,5]
pm   15   16   17   18   21
mm   15   16   17   18   21

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$hasInterrogating
[1] TRUE

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$offset
   [,1] [,2] [,3] [,4] [,5]
pm   -2   -1    0    1    4
mm   -2   -1    0    1    4

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$mmACount
   [,1] [,2] [,3] [,4] [,5]
pm    1    1    1    1    1
mm    2    2    1    2    2

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$mmBCount
   [,1] [,2] [,3] [,4] [,5]
pm    0    0    0    0    0
mm    1    1    1    1    1


$`SNP_A-1509436`$groups$`SNP_A-1509436C`
$`SNP_A-1509436`$groups$`SNP_A-1509436C`$x
   [,1] [,2] [,3] [,4] [,5]
pm  311  409  504   19  504
mm  311  409  504   19  504

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$y
   [,1] [,2] [,3] [,4] [,5]
pm  275  199   87  399   63
mm  276  200   88  400   64

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$pbase
   [,1] [,2] [,3] [,4] [,5]
pm "c"  "c"  "c"  "a"  "t" 
mm "g"  "g"  "g"  "t"  "a" 

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$tbase
   [,1] [,2] [,3] [,4] [,5]
pm "g"  "g"  "g"  "t"  "a" 
mm "g"  "g"  "g"  "t"  "a" 

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$expos
   [,1] [,2] [,3] [,4] [,5]
pm   15   16   17   18   21
mm   15   16   17   18   21

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$hasInterrogating
[1] TRUE

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$offset
   [,1] [,2] [,3] [,4] [,5]
pm   -2   -1    0    1    4
mm   -2   -1    0    1    4

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$mmACount
   [,1] [,2] [,3] [,4] [,5]
pm    0    0    0    0    0
mm    1    1    1    1    1

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$mmBCount
   [,1] [,2] [,3] [,4] [,5]
pm    1    1    1    1    1
mm    2    2    1    2    2


$`SNP_A-1509436`$groups$`SNP_A-1509436T`
$`SNP_A-1509436`$groups$`SNP_A-1509436T`$x
   [,1] [,2] [,3] [,4] [,5]
pm  312  410  503  335  505
mm  312  410  503  335  505

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$y
   [,1] [,2] [,3] [,4] [,5]
pm  275  199   87  691   63
mm  276  200   88  692   64

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$pbase
   [,1] [,2] [,3] [,4] [,5]
pm "c"  "c"  "t"  "a"  "t" 
mm "g"  "g"  "a"  "t"  "a" 

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$tbase
   [,1] [,2] [,3] [,4] [,5]
pm "g"  "g"  "a"  "t"  "a" 
mm "g"  "g"  "a"  "t"  "a" 

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$expos
   [,1] [,2] [,3] [,4] [,5]
pm   15   16   17   18   21
mm   15   16   17   18   21

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$hasInterrogating
[1] TRUE

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$offset
   [,1] [,2] [,3] [,4] [,5]
pm   -2   -1    0    1    4
mm   -2   -1    0    1    4

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$mmACount
   [,1] [,2] [,3] [,4] [,5]
pm    1    1    1    1    1
mm    2    2    1    2    2

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$mmBCount
   [,1] [,2] [,3] [,4] [,5]
pm    0    0    0    0    0
mm    1    1    1    1    1




Joined CDF structure:
$`SNP_A-1509436`
$`SNP_A-1509436`$groups
$`SNP_A-1509436`$groups$`SNP_A-1509436C`
$`SNP_A-1509436`$groups$`SNP_A-1509436C`$x
   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
pm  565  662  334  196  147  311  409  504   19   504
mm  565  662  334  196  147  311  409  504   19   504

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$y
   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
pm  309  141  113  265   29  275  199   87  399    63
mm  310  142  114  266   30  276  200   88  400    64

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$pbase
   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
pm "g"  "g"  "g"  "t"  "a"  "c"  "c"  "c"  "a"  "t"  
mm "c"  "c"  "c"  "a"  "t"  "g"  "g"  "g"  "t"  "a"  

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$tbase
   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
pm "c"  "c"  "c"  "a"  "t"  "g"  "g"  "g"  "t"  "a"  
mm "c"  "c"  "c"  "a"  "t"  "g"  "g"  "g"  "t"  "a"  

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$expos
   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
pm   15   16   17   18   21   15   16   17   18    21
mm   15   16   17   18   21   15   16   17   18    21

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$hasInterrogating
[1] TRUE TRUE

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$offset
   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
pm   -2   -1    0    1    4   -2   -1    0    1     4
mm   -2   -1    0    1    4   -2   -1    0    1     4

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$mmACount
   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
pm    0    0    0    0    0    0    0    0    0     0
mm    1    1    1    1    1    1    1    1    1     1

$`SNP_A-1509436`$groups$`SNP_A-1509436C`$mmBCount
   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
pm    1    1    1    1    1    1    1    1    1     1
mm    2    2    1    2    2    2    2    1    2     2


$`SNP_A-1509436`$groups$`SNP_A-1509436T`
$`SNP_A-1509436`$groups$`SNP_A-1509436T`$x
   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
pm  566  663  333  195  148  312  410  503  335   505
mm  566  663  333  195  148  312  410  503  335   505

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$y
   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
pm  309  141  113  265   29  275  199   87  691    63
mm  310  142  114  266   30  276  200   88  692    64

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$pbase
   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
pm "g"  "g"  "a"  "t"  "a"  "c"  "c"  "t"  "a"  "t"  
mm "c"  "c"  "t"  "a"  "t"  "g"  "g"  "a"  "t"  "a"  

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$tbase
   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
pm "c"  "c"  "t"  "a"  "t"  "g"  "g"  "a"  "t"  "a"  
mm "c"  "c"  "t"  "a"  "t"  "g"  "g"  "a"  "t"  "a"  

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$expos
   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
pm   15   16   17   18   21   15   16   17   18    21
mm   15   16   17   18   21   15   16   17   18    21

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$hasInterrogating
[1] TRUE TRUE

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$offset
   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
pm   -2   -1    0    1    4   -2   -1    0    1     4
mm   -2   -1    0    1    4   -2   -1    0    1     4

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$mmACount
   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
pm    1    1    1    1    1    1    1    1    1     1
mm    2    2    1    2    2    2    2    1    2     2

$`SNP_A-1509436`$groups$`SNP_A-1509436T`$mmBCount
   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
pm    0    0    0    0    0    0    0    0    0     0
mm    1    1    1    1    1    1    1    1    1     1




Probe quartets:
$`SNP_A-1509436`
$`SNP_A-1509436`$groups
$`SNP_A-1509436`$groups$`SNP_A-1509436CSNP_A-1509436T`
$`SNP_A-1509436`$groups$`SNP_A-1509436CSNP_A-1509436T`$x
    [,1] [,2] [,3] [,4] [,5]
pmA  565  662  334  196  147
mmA  565  662  334  196  147
pmB  566  663  333  195  148
mmB  566  663  333  195  148

$`SNP_A-1509436`$groups$`SNP_A-1509436CSNP_A-1509436T`$y
    [,1] [,2] [,3] [,4] [,5]
pmA  309  141  113  265   29
mmA  310  142  114  266   30
pmB  309  141  113  265   29
mmB  310  142  114  266   30

$`SNP_A-1509436`$groups$`SNP_A-1509436CSNP_A-1509436T`$pbase
    [,1] [,2] [,3] [,4] [,5]
pmA "g"  "g"  "g"  "t"  "a" 
mmA "c"  "c"  "c"  "a"  "t" 
pmB "g"  "g"  "a"  "t"  "a" 
mmB "c"  "c"  "t"  "a"  "t" 

$`SNP_A-1509436`$groups$`SNP_A-1509436CSNP_A-1509436T`$tbase
    [,1] [,2] [,3] [,4] [,5]
pmA "c"  "c"  "c"  "a"  "t" 
mmA "c"  "c"  "c"  "a"  "t" 
pmB "c"  "c"  "t"  "a"  "t" 
mmB "c"  "c"  "t"  "a"  "t" 

$`SNP_A-1509436`$groups$`SNP_A-1509436CSNP_A-1509436T`$expos
    [,1] [,2] [,3] [,4] [,5]
pmA   15   16   17   18   21
mmA   15   16   17   18   21
pmB   15   16   17   18   21
mmB   15   16   17   18   21


$`SNP_A-1509436`$groups$`SNP_A-1509436CSNP_A-1509436T`
$`SNP_A-1509436`$groups$`SNP_A-1509436CSNP_A-1509436T`$x
    [,1] [,2] [,3] [,4] [,5]
pmA  311  409  504   19  504
mmA  311  409  504   19  504
pmB  312  410  503  335  505
mmB  312  410  503  335  505

$`SNP_A-1509436`$groups$`SNP_A-1509436CSNP_A-1509436T`$y
    [,1] [,2] [,3] [,4] [,5]
pmA  275  199   87  399   63
mmA  276  200   88  400   64
pmB  275  199   87  691   63
mmB  276  200   88  692   64

$`SNP_A-1509436`$groups$`SNP_A-1509436CSNP_A-1509436T`$pbase
    [,1] [,2] [,3] [,4] [,5]
pmA "c"  "c"  "c"  "a"  "t" 
mmA "g"  "g"  "g"  "t"  "a" 
pmB "c"  "c"  "t"  "a"  "t" 
mmB "g"  "g"  "a"  "t"  "a" 

$`SNP_A-1509436`$groups$`SNP_A-1509436CSNP_A-1509436T`$tbase
    [,1] [,2] [,3] [,4] [,5]
pmA "g"  "g"  "g"  "t"  "a" 
mmA "g"  "g"  "g"  "t"  "a" 
pmB "g"  "g"  "a"  "t"  "a" 
mmB "g"  "g"  "a"  "t"  "a" 

$`SNP_A-1509436`$groups$`SNP_A-1509436CSNP_A-1509436T`$expos
    [,1] [,2] [,3] [,4] [,5]
pmA   15   16   17   18   21
mmA   15   16   17   18   21
pmB   15   16   17   18   21
mmB   15   16   17   18   21




> ##############################################################
> 
> 
> 
> 
> 
> 
> dev.off()
null device 
          1 
>