Normalize Plates (NPI)

Groups of data (e.g. wells of a plates) are normalized relative to two subsets (e.g. some wells within that plate, e.g. some negative control wells and some positive controls wells). For each group the mean (or median) is calculated for the two selected subsets. Based on these estimates, all data points of each group are normalized by applying this formula:

x.npi = (mean(x[subset{positive}]) - x) / (mean(x[subset{positive}]) - mean(x[subset{negative}])) * 100
x.npi = (median(x[subset{positive}]) - x) / (median(x[subset{positive}]) - median(x[subset{negative}])) * 100

Therfore x.npi values resemble the "percentage of inhibition", where the positive subset is defined as 0% and the negative subset as 100%. By swapping the two subsets the definition will be "percentage of activation" and negatives will be set to 0% and positives to 100%.

Literature: Malo et al., Nat. Biotechnol. 24, 167-179 (2006)


Group data by
Select the column to define the groups (e.g. "barcode" for plate-wise normalization). Select >none< for no grouping (e.g. normalization of the whole screen based on all negative controls available).
Select the columns with data to be normalized.
Column with reference label
Select the column which contains the label defining the reference subset (e.g. treatment)
Subset / Positive Control
Select a subset (representing maximum activation) that is used to calculate mean (median) for each group
Subset / Negative Control
Select a subset (representing maximum inhibition) that is used to calculate mean (median) for each group
Replace existing values
If checked the raw values will be replaced by the normalized values. Otherwise columns with the normalized values will be appended - ".npi"
Use robust statistics
Median will be calculated instead of mean.
Column suffix
The default column suffix ".npi" can be changed
Load a limited number of columns
If big data tables create memory problems, the number of columns read in memory (subset data) can be restricted. Then, statistic calculation will be done sequential for each set with the given number of columns.

Input Ports

Input table

Output Ports

Table with normalized values
Table with statistics used for normalization


This node has no views




You want to see the source code for this node? Click the following button and we’ll use our super-powers to find it for you.