STDEV Function in Calligra Sheets: Sample Standard Deviation
Calculate sample standard deviation with Calligra Sheets STDEV using reproducible inputs, correct n−1 denominator, outlier comparisons and documented limitations.
Verification status: Official documentation referenced; example outcomes independently reasoned or arithmetically checked where stated. Not executed in Calligra Sheets. How formula examples are checked
Quick answer: STDEV calculates sample standard deviation, a measure of how far numeric observations typically vary from their sample mean. KDE documents =STDEV(6;7;8) → 1. Unlike a population standard deviation, the sample calculation divides the sum of squared deviations by n−1, not n. Both the official documentation and Calligra 26.08.2 calculation source support this distinction. [K1, K2, K3, I1]
Validation (2026-10-13): KDE’s handbook, function registration, and version-pinned engine implementation were examined. All numerical examples are independently calculated expected outputs; no native Calligra Sheets application run was performed, and error displays, input coercion, and locale behavior are not asserted as tested. [K1–K5, I1]
Exact syntax, parameters, types, and defaults
=STDEV(value1; [value2]; ...)
=STDEV(B2:B6)
value1(required): a numeric observation, cell reference, or numeric range. The official 26.08.2 registration usessetParamCount(1, -1)andsetAcceptArray(): at least one function argument and array/range acceptance. The source does not encode a fixed numeric cap here, but it does not establish unlimited practical arguments. [K2]value2and later values (optional): more numeric observations or ranges. Although the function accepts one syntactic argument, a mathematically meaningful sample standard deviation requires at least two accepted numeric observations. This is a data requirement, not a second mandatory formula argument. [K2, K3, I1]- No separate sample/population flag: this registration always selects the sample form. Use the distinct registered function
STDEVPwhen your observations represent the entire population. [K1, K2, K3] - Result: a nonnegative numeric spread for valid numeric samples. It is 0 when all observed numeric values are equal. It is in the same units as the input values. [I1]
- Argument order: reordering the same valid numeric observations does not change standard deviation mathematically. [I1]
- Locale punctuation: the KDE English handbook separates explicit arguments using
;, uses.as the decimal separator, and writes contiguous ranges with:. Only the English examples are asserted, not every installation’s locale parser. [K1]
For n valid observations x1…xn, let mean = (x1+…+xn)/n. Then:
sample standard deviation = SQRT( SUM((xi - mean)^2) / (n - 1) )
This is a mathematical expression, not a single formula with an undocumented array-entry convention. The pinned Calligra implementation func_stddev calls ValueCalc::stddev(args,false); its engine computes a mean, sums the squared deviations, and divides by count−1 before taking the square root. [K3, K4, I1]
Reproduce the sample workbook
- Open Calligra Sheets with a blank worksheet. Check whether
STDEVis available in your installed build; the official 26.08.2 source registration alone cannot prove installed execution. [K2] - Enter these numeric inputs exactly. B7 contains one deliberate outlier; keep it out of the shorter B2:B6 range.
- Enter each formula in column E, not in the B input range; begin with
=and use the shown separators for the handbook-style example. - Display enough decimal places to compare expected fractional results, and distinguish a mathematical expectation from an observed native test. [I1]
| Cell | Value | Cell | Value |
|---|---|---|---|
| A1 | Trial | B1 | Measurement |
| A2 | 1 | B2 | 6 |
| A3 | 2 | B3 | 7 |
| A4 | 3 | B4 | 8 |
| A5 | 4 | B5 | 9 |
| A6 | 5 | B6 | 10 |
| A7 | Outlier | B7 | 100 |
| Enter in | Formula | Independently expected result | What it demonstrates |
|---|---|---|---|
| E2 | =STDEV(B2:B6) |
1.581138830084 | Five-number sample uses divisor 4. |
| E3 | =STDEVP(B2:B6) |
1.414213562373 | Same data treated as the complete population; divisor 5. |
| E4 | =STDEV(6;7;8) |
1 | Official KDE handbook example. |
| E5 | =STDEV(6;6;6) |
0 | All values identical. |
| E6 | =STDEV(B2:B7) |
37.585458180880 | Outlier substantially increases spread. |
| E7 | =AVERAGE(B2:B6) |
8 | Mean required for a manual check. |
| E8 | =STDEV(B2:B6)/AVERAGE(B2:B6) |
0.197642353761 | Coefficient of variation: approximately 19.7642%. |
| E9 | =(B6-AVERAGE(B2:B6))/STDEV(B2:B6) |
1.264911064067 | Sample z-score of B6=10 relative to the five-number mean. |
| E10 | =STDEV(2;4) |
1.414213562373 | Two-value sample; denominator 1. |
Arithmetic audit: For B2:B6 = 6, 7, 8, 9, 10, the mean is 8 and deviations are −2, −1, 0, 1, 2. Their squares total 4+1+0+1+4 = 10. Therefore STDEV = √(10/4) = √2.5 ≈ 1.581138830084. The population counterpart is STDEVP = √(10/5) = √2 ≈ 1.414213562373. [I1, K3]
The outlier case B2:B7 has a mean of 140/6 and an independently calculated sample deviation of 37.585458180880, illustrating why sample dispersion can change dramatically with extremes. This is not an anomaly in the formula. [I1]
Advanced technique 1: independently reconstruct STDEV without array formulas
You can audit the function row by row, avoiding any unverified dynamic-array behavior:
- In G1 type
Mean, and in G2 enter=AVERAGE(B2:B6)(expected 8). - In C1 type
Squared deviation. Enter=(B2-$G$2)^2in C2 and copy it through C6. Expected numeric results: 4, 1, 0, 1, 4;$G$2holds the mean cell fixed. [I1] - In G3, enter
=SUM(C2:C6)(expected 10). - In G4, enter
=COUNT(B2:B6)(expected 5 for this numeric-only range). - In G5, enter
=SQRT(G3/(G4-1))(expected 1.581138830084). Its result should agree numerically with E2, within normal floating-point rounding. [I1, K3, K4]
Why this matters: the helper calculation makes the n−1 divisor explicit, so it is easier to detect accidental use of a population formula or an incorrect range. This step-by-step reconstruction uses established scalar formulas, not an assumed spill or CSE array syntax. [I1]
Advanced technique 2: standardized values and unit-free spread
Coefficient of variation (CV): with a nonzero, meaningful mean, =STDEV(B2:B6)/AVERAGE(B2:B6) provides sample spread relative to the magnitude of that mean. In this example the result is 0.197642353761 = 19.7642%. Interpret CV cautiously if the mean is near zero, when the variable is on an interval (rather than a ratio) scale, or when negative values make the ratio ambiguous. These are statistical interpretation limits, not a particular Calligra error. [I1]
Sample z-score: =(B6-AVERAGE(B2:B6))/STDEV(B2:B6) is 1.264911064067 for the value 10. It measures how many sample standard deviations the observation is above the sample mean. If every value is identical, STDEV is 0, and the z-score formula divides by zero; do not claim a specific cell-rendered Calligra error without an application test. [I1, K3]
Errors, boundaries, and troubleshooting
| Case | Practical recommendation | Verified status |
|---|---|---|
| Unknown function | Check installed Calligra Sheets version/module; the statistical module in release 26.08.2 registers STDEV. | Source registration, not runtime proof. [K2] |
| Formula appears as text | Begin the entry with = and inspect cell format. |
General diagnostic; not application-tested. |
| Wrong separator or decimal mark | Try the syntax in the installed KDE function help; ; and . are the documented English example convention. |
Handbook; locale variations untested. [K1] |
| Only one numeric observation | The sample equation has denominator n−1=0; the pinned helper divides by cnt−1. No specific visible error string has been verified. |
Source and mathematics; native boundary test pending. [K3, K4, I1] |
| All empty or all text observations | The count and calculation helpers determine which values contribute; do not assume Excel’s text/blank coercion applies. | Native test required for exact result. [K4] |
| Booleans, string numbers, direct text parameters | ValueCalc::stddev(..., false) chooses the numeric/non-A traversal, but upstream conversion and error propagation still need application tests. |
Source path verified, per-input outcome not observed. [K3, K4] |
| STDEV differs from STDEVP | The sample form divides by n−1; the population form divides by n. They should differ for nonconstant data. |
Distinct registered functions and source helpers. [K2–K4] |
| Results jump after adding a 100 | Verify whether your range includes the B7 outlier. | Independent numeric demonstration. [I1] |
| A helper z-score divides by zero | Check that sample spread is not zero before dividing. | Mathematical boundary, no native error message asserted. [I1] |
| Very large numbers or many values | Numerical precision, overflow and performance depend on installed engine and hardware. | Not benchmarked on an installed Calligra build. |
Native test matrix still outstanding: exactly one valid sample value; zero values; blank cells; text and Boolean cells within ranges; direct text arguments; error-valued cells; multi-range parameters; localized separators; very large/small magnitudes; comparison with STDEVP in a running 26.08.2 installation. Observe actual output strings before approving any error-specific claims. [K3, K4]
Version, platform and compatibility notes
- Calligra 26.08.2 (released October 8, 2026): official source registers
STDEVas accepting range input and calls the sample standard-deviation helper. The KDE handbook documents the sample interpretation and theSTDEVPrelationship. The handbook’s displayed revision is older than the source release. No running Calligra application was tested. [K1–K5] - Other software: Excel, LibreOffice Calc, Google Sheets and other spreadsheets have related statistical functions, but function naming across editions, separators, treatment of text and Booleans, floating-point precision and error propagation are not guaranteed to match Calligra. No other application’s behavior is offered as Calligra runtime evidence. [K3, K4]
- Platforms: KDE’s download guidance lists Linux distro packages and Flatpak; Windows availability is described as in progress. This review ran no application on Linux, Windows or macOS. [K5]
- Aliases: the pinned official release’s registered primary-function inventory lists STDEV with no explicit alias. The separately registered STDEVP is a related different mathematical operation, not an alias rather than a spelling variant. [K2]
Verified related KDE documentation: STDEVP — population standard deviation, AVERAGE — sample mean, COUNT — numeric observations, SUM, SQRT, and MEDIAN — outlier-robust centre. [K1]
Dated claim-level references — checked 2026-10-13
- [K1] KDE official Calligra Sheets handbook, STDEV/STDEVP chapters, sample interpretation, formula syntax and
STDEV(6;7;8)=1. The handbook itself shows revision dated 2013-03-11 and is not an installed-version guarantee. https://docs.kde.org/stable_kf6/en/calligra/sheets/functions.html#STDEV - [K2] Pinned Calligra 26.08.2 function registration, statistical.cpp around lines 333–344, contains separate
STDEVandSTDEVP, their arguments and array acceptance; official release catalogue has no explicit alias for STDEV. https://github.com/KDE/calligra/blob/72123cc643f6625351139e7df294544255a1056f/sheets/functions/statistical.cpp#L333-L344 - [K3] Pinned
func_stddev/func_stddevpwrappers, statistical.cpp around lines 2542–2562, invokecalc->stddev(args,false)andcalc->stddevP(args,false)respectively. https://github.com/KDE/calligra/blob/72123cc643f6625351139e7df294544255a1056f/sheets/functions/statistical.cpp#L2542-L2562 - [K4] Pinned KDE ValueCalc engine,
ValueCalc::stddev,ValueCalc::stddevP,count,avgandarrayWalk(sample usescnt−1, population usescnt); see around lines 2391–2437. https://github.com/KDE/calligra/blob/72123cc643f6625351139e7df294544255a1056f/sheets/engine/ValueCalc.cpp#L2391-L2437 - [K5] Official KDE Gear 26.08.2 announcement, dated 2026-10-08, and Calligra download instructions checked 2026-10-13. https://kde.org/announcements/gear/26.08.2/ · https://calligra.org/download/
- [K6] Version-pinned KDE statistical.xml STDEV metadata near lines 1181–1225 (declared types and handbook-style syntax). https://github.com/KDE/calligra/blob/72123cc643f6625351139e7df294544255a1056f/sheets/functions/statistical.xml#L1181-L1225
- [I1] Independent numerical verification, performed 2026-10-13 using Python
statistics.stdev,statistics.pstdev, direct centered-square arithmetic and manual square roots. Expected results were cross-checked against KDE’s rounded example. None is a native Calligra execution result.