The standard deviation is the square root of the variance — a measure of how spread out a set of values is around the mean. For samples with mean :

A large standard deviation says the values vary a lot around the mean. A small one says they’re concentrated near it. The standard deviation is in the same units as the data itself — if the data is voltages, the standard deviation is in volts.

This is its main advantage over the variance, which is in squared units (volts squared, for a voltage signal). For interpretation and for arithmetic that has to produce a result in the original units, the standard deviation is the right summary.

In Feature extraction from a signal, the rolling standard deviation within a window captures the overall amplitude of the variation in that window. For an ECG window containing one heartbeat, the standard deviation is roughly the amplitude of the heartbeat — small for a quiet stretch between beats, large during the QRS complex.

In Normalization, we divide by the standard deviation to scale a signal to unit spread — the second step in computing the z-score. After the division, the signal is dimensionless and has standard deviation 1.

The standard deviation is the second of the first four moments used as standard signal features, alongside the mean (first moment), Skewness (third moment), and Kurtosis (fourth moment). Together they describe the shape of the distribution of values in a window — center, spread, asymmetry, tail heaviness.

In Pandas: df['col'].std() for the whole column, df['col'].rolling(N).std() for a rolling window. In NumPy: np.std(arr).

Pandas’ .std() divides by by default (the unbiased sample standard deviation, Bessel’s correction). NumPy’s np.std() divides by by default; pass ddof=1 for the unbiased version. The difference matters most for small samples and converges for large . The Introduction to Data Science textbook uses the divide-by- form throughout, but production code should be explicit about which convention is in use.