stat_zscore — MATH stats op

• Data kinds: signal → signal

• Call: import fullseye as fs; fs.ledger.stat_zscore(x) (implementation को सीधे call करना हो तो import mathops; mathops.stat_zscore(x), registry से लेना हो तो opsmath.get("stat_zscore"))

उपयोग

1-D sample को standardise करता है: (x - mean) / std (population ddof=0)।

> नीचे का विस्तृत विवरण मूल text में है — सारांश और headings का अनुवाद हो चुका है।

The result has mean 0 and standard deviation 1 — the common currency for comparing residuals across scales and flagging outliers (|z| > 3).

A constant input raises ValueError — the decision, stated: with zero variance the z-score is 0/0. Returning silent zeros would claim "every point is perfectly average", which is *a* convention but hides upstream breakage (a sensor stuck at one value would sail through an outlier gate). Fail-closed instead; a caller who wants the all-zeros convention can catch this and substitute deliberately.

HALCON: no direct tuple operator (compose tuple_mean + tuple_deviation + arithmetic).

पूरी family का input contract (fail-closed)

mathops के सभी ops गणना से पहले input की जाँच करते हैं (कुछ भी चुपचाप पास नहीं होता):

• complex input से ValueError — float64 में ज़बरदस्ती बदलने पर imaginary part चुपचाप छूट जाता है (numpy केवल ComplexWarning देता है और "सही दिखने वाला पर गलत" real number लौटाता है)। .real/.imag/abs() स्पष्ट रूप से लिखें, या complex data संभालने वाले complexops का उपयोग करें।

• masked array (masked elements वाला) से ValueError — mask हटाकर नीचे के raw values इस्तेमाल करने वाला implicit conversion अस्वीकार है। भरना है या हटाना है, यह स्पष्ट रूप से बताएँ।

• हर input पर NaN/Inf से ValueError (गिनती बताकर अस्वीकार — क्योंकि यह पूरे परिणाम में फैल जाता है)।

• Shape सख़्त है: 1-D और 2-D को implicit रूप से promote या broadcast नहीं किया जाता (vector slot में matrix या matrix slot में vector देने पर ValueError; reshape स्पष्ट रूप से करें)।

• Size की सीमा: matrix लेने वाले ops और stat_histogram के bins, mathops.MAX_ELEMENTS (2^26 ≈ 6.7 करोड़ elements) से अधिक होने पर ValueError देते हैं।

उपयोग की विस्तृत guide

• math_metrology family guide

पृष्ठभूमि guides (इस op के पीछे की physics और conventions)

• measurement_uncertainty — Measurement uncertainty और calibration — 'हम माप रहे हैं' कहने के लिए क्या चाहिए

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• math_metrology — py -3.11 examples/math_metrology.py

वे अगले ops जिनसे type जुड़ता है (signal को input के रूप में लेते हैं)

mat_solve · mat_lstsq · stat_describe · stat_histogram · interp_linear · interp_cubic · interp_scattered · poly_fit

इसी category के (stats)

stat_describe · stat_histogram · stat_covariance · stat_correlation


*Provenance: mathops.py — MATH operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.