cy3FitModel: Compute Cy3 scaling factors using regression

Description Usage Arguments Value Author(s) References See Also

View source: R/cy3FitModel.R

Description

PBM arrays are scanned twice, once for Cy3-tagged dUTPs to quantify dsDNA abundance at each probe, and again for the Alexa488-tagged protein. The Cy3 scans can be used to first filter out probes which appear to have poor dsDNA enrichment, and second, to scale Alexa488 intensities to account for differences in dsDNA abundance between probes.

Both this function and the cy3FitEmpirical function can be used to estimate scaling factors for filtering and scaling Alexa488 probe intensities using Cy3 information. The cy3FitEmpirical approach is recommended when an appropriate reference set of Cy3 scans are available. A precomputed Cy3 reference for the uPBM 8x60k design is available in the upbmAux package.

Since probe intensities in the Cy3 scans are roughly proportional to the number of adenines in the probe sequence, the original Universal PBM Analysis Suite proposed modeling the observed Cy3 intensities with linear regression using the counts of all tetranucleotide sequences starting with an adenine as covariates. The observed-to-expected intensity ratios are then used as the scaling factors.

Given a PBMExperiment of Cy3 scans, this function fits the tetranucleotide regression models and returns the expected Cy3 intensities, the residuals from the fits, and the corresponding observed-to-expected ratios for each probe as new assays added to the original Cy3 PBMExperiment object.

The returned PBMExperiment object can be passed to cy3Normalize with a PBMExperiment of Alexa488 scan intensities to filter low quality probes and/or normalize Alexa488 intensities by the computed ratios.

Usage

1
2
3
4
5
6
7
cy3FitModel(
  pe,
  assay = SummarizedExperiment::assayNames(pe)[1],
  refit = TRUE,
  threshold = 1/2,
  verbose = FALSE
)

Arguments

pe

a PBMExperiment object containing Cy3 intensity data.

assay

a numeric index or string specifying the intensity assay. (default = SummarizedExperiment::assayNames(pe)[1])

refit

a logical value whether to refit tetranucleotide linear regression models after filtering outliers to compute observed-to-expected ratios. (default = TRUE)

threshold

a numeric threshold on the absolute value of the log2 ratio between observed and expected Cy3 intensities. (default = 1/2)

verbose

a logical value whether to print verbose output during analysis. (default = FALSE)

Value

Original Cy3 PBMExperiment object with additional assays corresponding to ratio of observed to expected probe intensities, and whether probes were flagged as low-quality based on abs(log2(ratio)) > threshold. Cy3 models are stored in the metadata of the returned object.

Author(s)

Patrick Kimes

References

See Also

cy3Normalize, cy3FitEmpirical


pkimes/upbm documentation built on Oct. 17, 2020, 9:10 a.m.