fitPoisthNorm | R Documentation |

Poisson threshold model based normalization-log2 transformation for single slide or for multiple slides

```
fitPoisthNorm(object, ...)
## S4 method for signature 'NanoStringGeoMxSet'
fitPoisthNorm(
object,
split = FALSE,
ROIs_high = NULL,
features_high = NULL,
features_all = NULL,
sizefact_start = NULL,
sizefact_BG = NULL,
threshold_mean = NULL,
preci2 = 10000,
iterations = 2,
prior_type = c("contrast", "equal"),
sizefactrec = TRUE,
size_scale = c("sum", "first"),
sizescalebythreshold = FALSE,
covrob = FALSE,
preci1con = 1/25,
cutoff = 15,
confac = 1,
calhes = FALSE
)
## S4 method for signature 'matrix'
fitPoisthNorm(
object,
probenum = rep(1, NROW(object)),
features_high,
features_all,
sizefact_start,
sizefact_BG,
threshold_mean,
preci2 = 10000,
iterations = 2,
prior_type = c("contrast", "equal"),
sizefactrec = TRUE,
size_scale = c("sum", "first"),
sizescalebythreshold = FALSE,
covrob = FALSE,
preci1con = 1/25,
cutoff = 15,
confac = 1,
calhes = FALSE
)
```

`object` |
count matrix with features in rows and samples in columns |

`...` |
additional argument list that might be used |

`split` |
indicator variable on whether it is for multiple slides (Yes, TRUE; No, FALSE) |

`ROIs_high` |
ROIs with high expressions defined based on featfact and featfact |

`features_high` |
subset of features which are well above the background |

`features_all` |
full feature vector to apply the normalization on |

`sizefact_start` |
initial value for size factors |

`sizefact_BG` |
size factor for background |

`threshold_mean` |
average threshold level |

`preci2` |
precision for threshold, default=10000 |

`iterations` |
iteration number, default=2, the first iteration using the features_high to construct the prior for parameters then refit the model on all features. precision matrix for threshold: preci2 |

`prior_type` |
prior type for preci1, "equal" or "contrast", default="contrast" |

`sizefactrec` |
XXXX, default = TRUE |

`size_scale` |
method to scale the sizefact, sum(sizefact)=1 when size_scale="sum", sizefact[1]=1 when size_scale="first" |

`sizescalebythreshold` |
XXXX, default = FALSE |

`covrob` |
whether to use robust covariance in calculating the prior precision matrix 1, default = FALSE |

`preci1con` |
The user input constant term in specifying precision matrix 1, default=1/25 |

`cutoff` |
term in calculating precision matrix 1, default=15 |

`confac` |
The user input factor for contrast in precision matrix 1, default=1 |

`calhes` |
The user input whether to calculate hessian: calhes, default=FALSE |

`probenum` |
a vector of numbers of probes in each gene |

if split is FALSE, a valid GeoMx S4 object including the following items

para0_norm, matrix of estimated parameters for iter=1, features in columns and parameters(log2 expression, threshold) in rows, in featureData.

para_norm, matrix of estimated parameters for iter=2, features in columns and parameters(log2 expression, threshold) in rows, in featureData.

normmat0, matrix of log2 expression for iter=1, features in columns and log2 expression in rows, in assay slot.

normmat, matrix of log2 expression for iter=2, features in columns and log2 expression in rows, in assay lot.

sizefact_norm, estimated sizefact, in phenoData.

sizefact0_norm, estimated sizefact in iter=1, in phenoData.

preci1, precision matrix 1, in experimentData.

conv0, vector of convergence for iter=1, 0 converged, 1 not converged, in featureData

conv, vector of convergence for iter=2, 0 converged, 1 not converged, in featureData

features_high, same as the input features_high, in featureData

features_all, same as the input features_all, in featureData

if split is TRUE, a valid GeoMx S4 object with the following items appended.

threshold0, matrix of estimated threshold for iter=1, features in columns and threshold for different slides in rows, in featureData.

threshold, matrix of estimated threshold for iter=2, features in columns and threshold for different slides in rows, in featureData.

normmat0_sp, matrix of log2 expression for iter=1, features in columns and log2 expression in rows, in assay slot.

normmat_sp, matrix of log2 expression for iter=2, features in columns and log2 expression in rows, in assay slot.

sizefact_norm_sp, estimated sizefact, in phenoData

sizefact0_norm_sp, estimated sizefact in iter=1, in phenoData

preci1, precision matrix 1, in experimentData

conv0_sp_XX, vector of convergence for each unique slide value for iter=1, 0 converged, 1 not converged, in featureData for each unique slide.

conv_sp_XX, vector of convergence for each unique slide value for iter=2, 0 converged, 1 not converged, in featureData for each unique slide.

features_high_sp, same as the input features_high, in featureData.

features_all_sp, same as the input features_all, in featureData.

a list of following items

para0, matrix of estimated parameters for iter=1, features in columns and parameters(log2 expression, threshold) in rows.

para, matrix of estimated parameters for iter=2, features in columns and parameters(log2 expression, threshold) in rows.

normmat0, matrix of log2 expression for iter=1, features in columns and log2 expression in rows.

normmat, matrix of log2 expression for iter=2, features in columns and log2 expression in rows.

sizefact, estimated sizefact

sizefact0, estimated sizefact in iter=1

preci1, precision matrix 1

Im0, Information matrix of parameters in iter=1

Im, Information matrix of parameters in iter=2

conv0, vector of convergence for iter=1, 0 converged, 1 not converged

conv, vector of convergence for iter=2, 0 converged, 1 not converged

features_high, same as the input features_high

features_all, same as the input features_all

```
library(Biobase)
library(dplyr)
data(demoData)
demoData <- fitPoisBG(demoData, size_scale = "sum")
demoData <- aggreprobe(demoData, use = "cor")
demoData <- BGScoreTest(demoData)
thmean <- 1 * mean(fData(demoData)$featfact, na.rm = TRUE)
demo_pos <- demoData[which(!fData(demoData)$CodeClass == "Negative"), ]
demo_neg <- demoData[which(fData(demoData)$CodeClass == "Negative"), ]
sc1_scores <- fData(demo_pos)[, "scores"]
names(sc1_scores) <- fData(demo_pos)[, "TargetName"]
features_high <- ((sc1_scores > quantile(sc1_scores, probs = 0.4)) &
(sc1_scores < quantile(sc1_scores, probs = 0.95))) |>
which() |>
names()
set.seed(123)
features_high <- sample(features_high, 100)
demoData <- fitNBth(demoData,
features_high = features_high,
sizefact_BG = demo_neg$sizefact,
threshold_start = thmean,
iterations = 5,
start_para = c(200, 1),
lower_sizefact = 0,
lower_threshold = 100,
tol = 1e-8)
ROIs_high <- sampleNames(demoData)[which((quantile(fData(demoData)[["para"]][, 1],
probs = 0.90, na.rm = TRUE) -
notes(demoData)[["threshold"]]) * demoData$sizefact_fitNBth > 2)]
features_all <- rownames(demo_pos)
thmean <- mean(fData(demo_neg)[["featfact"]])
demoData <- fitPoisthNorm(
object = demoData,
split = FALSE,
ROIs_high = ROIs_high,
features_high = features_high,
features_all = features_all,
sizefact_start = demoData[, ROIs_high][["sizefact_fitNBth"]],
sizefact_BG = demoData[, ROIs_high][["sizefact"]],
threshold_mean = thmean,
preci2 = 10000,
prior_type = "contrast",
covrob = FALSE,
preci1con = 1 / 25
)
```

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.