Why the Distinction Matters
A multi-omics matrix can contain differences caused by the biology of interest, technical measurement effects, and the units in which features are recorded. Preprocessing operations address different parts of this problem. Normalization, as used here, adjusts for sample-level measurement effects so that samples can be compared more appropriately. Scaling adjusts feature-level units or magnitudes, so that features measured on different scales can be compared or combined. The terms are sometimes used differently across fields and software, so the operation and its purpose should always be stated explicitly.
Write a block as \(X=(x_{ij})\), with \(n\) samples in rows and \(p\) features in columns. A normalization may use information across features within a sample, across samples, or both, depending on the method. A scaling operation in the narrower feature-wise sense used here applies a feature-specific centering and/or scale factor down each column. These operations do not have interchangeable aims: correcting sample measurement depth does not ensure that features have comparable units, and making feature variances comparable does not correct sample measurement depth.
Common Operations and Their Targets
For a count block with nonnegative entries, a simple library-size normalization computes the total \(L_i=\sum_{j=1}^{p}x_{ij}\) for each sample and rescales counts to a chosen target total \(T\). This is sample-specific: all features in a sample receive the same multiplier. It is appropriate only when the total is positive. It also relies on the total being a useful proxy for the sample’s measurement depth; compositional changes can make that assumption inadequate.
A zero-total row has \(L_i=0\), so this formula is undefined. Such a sample must be flagged and investigated, for example for failed measurement or an incorrect data import. It cannot be repaired by this formula or by choosing a positive target. If the row is confirmed to be a failed assay, a defensible analysis may exclude it with the reason documented; if it represents a meaningful sample, use a method designed for that situation or obtain valid measurements. Do not silently divide by zero or treat an arbitrary pseudocount as a measured library.
By contrast, feature-wise standardization uses a feature’s mean and sample standard deviation across samples. When \(s_j>0\), the standardized value is \(z_{ij}=(x_{ij}-\bar{x}_j)/s_j\). This is scaling: it expresses each value in standard-deviation units relative to that feature’s sample mean. It does not make samples have equal totals or correct a sample-specific technical effect. The standard deviation is zero for a constant feature, making this operation undefined; such a feature provides no across-sample variation to standardize and should be flagged, commonly for removal from analyses that require a nonzero scale.
Several familiar operations need careful classification. A log transformation changes the shape of a feature’s values and may reduce right skew; on its own, it is not sample normalization or feature-wise scaling. Quantile normalization is a sample-distribution normalization: it replaces values using a common empirical distribution across samples. It is justified only when making the sample distributions comparable is scientifically appropriate; genuine global shifts can be erased. Batch adjustment models sample-level batch effects and is a distinct covariate-adjustment task, even when its fitted corrections are applied to feature values. The earlier material on batch adjustment treats that task directly.
| Operation | Primary target | Classification and caution |
|---|---|---|
| Library-size adjustment | Sample measurement total | Normalization; requires positive row totals and a defensible depth assumption |
| Feature-wise z-score | Feature location and spread | Scaling; undefined for a constant feature |
| Log transformation | Value scale and distribution shape | Transformation; does not by itself equalize sample depth or feature variance |
| Quantile normalization | Sample-level empirical distributions | Normalization; can remove meaningful global distribution differences |
| Batch adjustment | Variation associated with a batch covariate | Covariate adjustment; should not be relabelled as feature scaling |
Worked Calculations
Worked Example: Library-Size Normalization, Including a Zero Total
Consider three hypothetical samples measured for two nonnegative count features. Their rows are \((100,300)\), \((200,600)\), and \((0,0)\). Use a target total \(T=1000\) for samples with positive totals. Compute the first two normalized rows and decide what to do with the third.
For sample 1, \(L_1=100+300=400>0\), so \(x_{11}^{*}=100(1000/400)=250\) and \(x_{12}^{*}=300(1000/400)=750\). The normalized row is \((250,750)\), whose sum is \(1000\).
For sample 2, \(L_2=200+600=800>0\), so \(x_{21}^{*}=200(1000/800)=250\) and \(x_{22}^{*}=600(1000/800)=750\). This row also sums to \(1000\). The proportional feature composition of these two samples is identical, so their normalized rows agree.
For sample 3, \(L_3=0\). The expression \(x_{3j}T/L_3\) divides by zero and is undefined; it does not yield a normalized row. Flag this sample and investigate its measurement status. If it is a confirmed failed assay, exclude it from this normalization and document the exclusion. Do not assign it \((0,0)\) as though that were a normalized row: its total is not the positive target, and the formula has not been applied.
This calculation checks the arithmetic condition \(L_i>0\), but not the scientific assumption that row total adequately represents measurement depth. If feature composition differs substantially among samples, equalizing totals can distort comparisons rather than fix them.
Worked Example: Feature-Wise Standardization
Suppose one hypothetical feature has measurements \(2,4,6\) units in three samples. Calculate its z-scores using the sample mean and sample standard deviation.
The mean is \(\bar{x}=(2+4+6)/3=4\) units. The sample standard deviation is \(s=\sqrt{[(2-4)^2+(4-4)^2+(6-4)^2]/(3-1)} =\sqrt{(4+0+4)/2}=2\) units.
Thus the standardized values are \((2-4)/2=-1\), \((4-4)/2=0\), and \((6-4)/2=1\). The feature is now expressed in standard-deviation units relative to its mean: one observation is one standard deviation below the mean, one is at the mean, and one is one standard deviation above it. This calculation assumes the three observations are the sample over which the feature’s center and spread are to be estimated. It does not establish that this feature is biologically comparable with another feature or remove any sample-specific technical effect.
Worked Example: Classifying a Mixed Preprocessing Plan
A hypothetical analyst proposes three steps for a two-feature block: divide each sample’s counts by its positive row total and multiply by \(1000\); take the natural logarithm of each resulting value plus one; then subtract each feature’s mean and divide by its sample standard deviation. Classify the steps and state a check for each.
The first step is sample-level normalization. For each row \(i\), check \(L_i>0\); after applying the formula, verify that the normalized row sum is \(1000\), up to numerical precision. Also assess whether total count is a suitable proxy for depth and whether composition differences could undermine that interpretation.
The second step is a transformation, not normalization or scaling by itself. Adding one makes the logarithm defined for a zero count, since \(\log(0+1)=0\). The analyst should still state the chosen log base and inspect whether the transformed values and resulting comparisons suit the measurement scale.
The third step is feature-wise scaling by z-scores. Check that the sample standard deviation of each feature is positive; if it is zero, division is undefined. The order matters: standardizing after the log transformation uses the mean and standard deviation of the transformed, normalized values, not those of the raw counts. This classification identifies the purpose of each step; it does not imply that all three steps are scientifically warranted.
Why the Definitions Hold and How to Diagnose Problems
The row-sum property of library-size normalization follows directly from its formula. For \(L_i>0\), summing the normalized values across features gives
The proof uses the same multiplier \(T/L_i\) for every feature in row \(i\), and it requires \(L_i>0\). It establishes equal normalized totals, not equal biological composition or absence of technical bias.
For a nonconstant feature, standardization centers and rescales it because \(\sum_i(x_{ij}-\bar{x}_j)/n=0\); dividing by the positive \(s_j\) changes the units but not that zero mean. With the sample standard deviation definition, the standardized values have sample variance one:
This is a feature-wise property; it says nothing about the totals or distributions of rows. Nor does it guarantee that later analyses should give every feature equal influence. Earlier material on feature scaling and block weights addresses how scaling affects distances and combined analyses.
Useful diagnostics follow the operation’s target. For library-size adjustment, inspect row totals before and after, identify zero or unusually small totals, and compare feature proportions or sample distributions to see whether a common multiplier is plausible. For feature scaling, check column means and standard deviations after processing, look for constant or near-constant features, and check whether a few extreme values dominate the estimated mean and standard deviation. For distribution-based normalization, compare empirical distributions before and after and ask whether a common distribution is an assumption of the measurement process or an unsupported convenience.
A diagnostic can reveal a computational failure without resolving a scientific assumption. For example, normalized row sums equal to \(T\) verify the arithmetic, but do not prove that total-count normalization is unbiased. Similarly, unit sample variance after z-scoring verifies the calculation, but does not prove that equal feature variance is appropriate for a downstream analysis.
Choosing Among Alternatives and Recognizing Limits
There is no single operation called “normalization” that is correct for every omics block. The appropriate choice depends on the data type, the technical mechanism, and the biological question. Library-size scaling is simple and transparent when positive totals reflect measurement depth and composition effects are limited. Other sample-level approaches, such as median-ratio methods for counts or quantile normalization for suitable intensity data, use different assumptions and should not be substituted automatically. Feature z-scores are useful when unit differences would otherwise dominate a distance-based method, but they can amplify noise in low-variance features and reduce the prominence of genuinely variable features.
Alternatives should be compared by their target and assumptions, not by a ranking from “less” to “more” preprocessing. A transformation changes scale or distributional shape; sample normalization addresses comparability across samples; feature scaling addresses units or relative feature magnitudes; batch adjustment addresses variation associated with measured batch structure. Some pipelines combine these operations, but each step should have a stated rationale and be evaluated separately. The order can change results because, for example, a log transform followed by standardization uses different centers and spreads than standardization of raw counts.
A frequent mistake is to call any operation that changes numeric values “normalization,” then assume that every resulting feature is comparable and every sample is corrected. The correction is to specify the axis, the target, and the assumptions: for example, “this divides each positive-total sample by its library size to address depth differences,” or “this centers and divides each feature by its sample standard deviation to remove unit differences.” These descriptions also make undefined cases visible: zero row totals for library-size adjustment and zero feature standard deviations for z-scoring.
Check Your Understanding
Answer each question, then compare with the solutions below.
- A sample has counts \((30,70)\) and a target total of \(500\). Calculate its library-size-normalized values. What condition must hold for the formula to be valid?
- A feature is measured as \(5,5,5\) across three samples. Can it be z-score standardized using its sample standard deviation? Explain.
- An analyst takes the natural logarithm of positive measurements. Is that operation, by itself, normalization or scaling? State its primary purpose.
- Why does a normalized row sum of \(1000\) not demonstrate that library-size normalization has removed all technical bias?
Solutions. (1) The total is \(30+70=100>0\). The normalized values are \(30(500/100)=150\) and \(70(500/100)=350\), which sum to \(500\). A positive row total and positive target are required. (2) No. The sample standard deviation is \(s=\sqrt{(0+0+0)/(3-1)}=0\), so z-scoring divides by zero; flag the constant feature rather than reporting standardized values. (3) It is a transformation, commonly used to change the value scale and reduce right skew; it does not by itself adjust sample-level measurement effects or standardize feature units. (4) The row-sum identity verifies the arithmetic of rescaling, not the assumption that the original total measures technical depth. Composition differences or other technical effects may remain, or the rescaling may alter meaningful global differences.