Outlier_Detection_Grubb_Dixon
Outlier Detection Grubb Dixon
Lumex QC URS & FS input.csv output.json rule-based LIMS-ready outlier
Open selectionUtility description: Outlier Detection Grubb Dixon
Outlier Detection Grubb Dixon — Statistical Outlier Analysis (Grubbs and Dixon) ℹ️ Utility applies Grubbs' and Dixon's criteria to detect anomalous values: • Grubbs' Test (G): For normally distributed data (N > 3). • Dixon's Q Test: For small samples (3 ≤ N ≤ 10). • Significance Level (Alpha): Usually 0.05 (95% confidence interval). ⚠️ CRITICAL: Presence of an outlier (Status: FAIL) requires investigation! Automatic removal of outliers without technical justification is prohibited by GMP. Usage: Outlier_Detection_Grubb_Dixon.exe → demo mode (console output) Outlier_Detection_Grubb_Dixon.exe input.csv output.json → evaluate your data Input format: BatchNumber,Alpha,Value1,Value2,Value3,... Example: STAT-SERIES-001,0.05,10.1,10.2,10.0,10.3,12.5 — WHY IS THIS NEEDED? During method validation (USP <1225>) and routine control (e.g., Uniformity of Dosage Units USP <905>), ensuring data homogeneity is crucial. • Outliers may arise from pipetting errors, air bubbles, instrument glitches, or sample heterogeneity. • Grubbs' test is most powerful for detecting a single outlier in a normal distribution. • Dixon's Q test is simple to calculate and widely used for quick checks of small series (3-10 replicates). • The utility automatically calculates statistics (G and Q) and compares them with critical tabular values. ⚠️ CRITICAL: • "FAIL" status means the statistical hypothesis of no outliers is rejected. • If an outlier is detected, raw data (chromatograms, spectra) must be checked for technical errors. • Retesting of the series is allowed only according to approved SOPs. • For multiple outliers, iterative methods or other tests (e.g., Tukey's test) are required. Key features: • Dual check (Grubbs + Dixon) for increased reliability. • Calculation of cleaned mean (excluding outlier) to assess anomaly impact. • Report generation for LIMS archiving. Critical parameters: • Grubbs G Statistic: < Critical Value • Dixon Q Statistic: < Critical Value • Alpha: 0.05 (Standard) 💡 Usage tips: 1. Use for replicate injection series (Precision) or individual dosage units (Uniformity). 2. Ensure data follows normal distribution before applying Grubbs' test. 3. For N > 10, Dixon's test is less effective; rely on Grubbs' or multiple outlier tests. 4. Always document the decision to exclude a data point from calculation. ⚠️ Note: This utility implements classical compendial approaches to handling anomalous results, consistent with FDA and EMA Data Integrity requirements.
input.csv
BatchNumber,Alpha,Val1,Val2,Val3,Val4,Val5,Val6,Val7,Val8,Val9,Val10 STAT-SERIES-001,0.05,10.1,10.2,10.0,10.3,10.1,10.2,10.1,10.0,10.2,10.1 STAT-SERIES-002,0.05,10.1,10.2,10.0,10.3,10.1,12.5,10.1,10.0,10.2,10.1 STAT-SERIES-003,0.05,5.0,5.1,5.2,5.0,5.1,5.0,5.1,5.2,5.0,5.1
Utility description
Outlier Detection Grubb Dixon — Statistical Outlier Analysis (Grubbs and Dixon) ℹ️ Utility applies Grubbs' and Dixon's criteria to detect anomalous values: • Grubbs' Test (G): For normally distributed data (N > 3). • Dixon's Q Test: For small samples (3 ≤ N ≤ 10). • Significance Level (Alpha): Usually 0.05 (95% confidence interval). ⚠️ CRITICAL: Presence of an outlier (Status: FAIL) requires investigation! Automatic removal of outliers without technical justification is prohibited by GMP. Usage: Outlier_Detection_Grubb_Dixon.exe → demo mode (console output) Outlier_Detection_Grubb_Dixon.exe input.csv output.json → evaluate your data Input format: BatchNumber,Alpha,Value1,Value2,Value3,... Example: STAT-SERIES-001,0.05,10.1,10.2,10.0,10.3,12.5 — WHY IS THIS NEEDED? During method validation (USP <1225>) and routine control (e.g., Uniformity of Dosage Units USP <905>), ensuring data homogeneity is crucial. • Outliers may arise from pipetting errors, air bubbles, instrument glitches, or sample heterogeneity. • Grubbs' test is most powerful for detecting a single outlier in a normal distribution. • Dixon's Q test is simple to calculate and widely used for quick checks of small series (3-10 replicates). • The utility automatically calculates statistics (G and Q) and compares them with critical tabular values. ⚠️ CRITICAL: • "FAIL" status means the statistical hypothesis of no outliers is rejected. • If an outlier is detected, raw data (chromatograms, spectra) must be checked for technical errors. • Retesting of the series is allowed only according to approved SOPs. • For multiple outliers, iterative methods or other tests (e.g., Tukey's test) are required. Key features: • Dual check (Grubbs + Dixon) for increased reliability. • Calculation of cleaned mean (excluding outlier) to assess anomaly impact. • Report generation for LIMS archiving. Critical parameters: • Grubbs G Statistic: < Critical Value • Dixon Q Statistic: < Critical Value • Alpha: 0.05 (Standard) 💡 Usage tips: 1. Use for replicate injection series (Precision) or individual dosage units (Uniformity). 2. Ensure data follows normal distribution before applying Grubbs' test. 3. For N > 10, Dixon's test is less effective; rely on Grubbs' or multiple outlier tests. 4. Always document the decision to exclude a data point from calculation. ⚠️ Note: This utility implements classical compendial approaches to handling anomalous results, consistent with FDA and EMA Data Integrity requirements.
URS & FS — User Requirements and Functional Specification
This document describes the controlled interface, user requirements and functional behaviour of Outlier_Detection_Grubb_Dixon. The utility is intended for automated verification of laboratory, pharmacopoeial, analytical or manufacturing QC parameters using input.csv and producing a structured output.json result.
Domain limits and critical parameters
Before production use, all limits must be verified against the approved specification, registration dossier, pharmacopoeial monograph, validated method and local SOPs.
- • Outliers may arise from pipetting errors, air bubbles, instrument glitches, or sample heterogeneity.
- • Grubbs' test is most powerful for detecting a single outlier in a normal distribution.
- • Dixon's Q test is simple to calculate and widely used for quick checks of small series (3-10 replicates).
- • The utility automatically calculates statistics (G and Q) and compares them with critical tabular values.
- • "FAIL" status means the statistical hypothesis of no outliers is rejected.
- • If an outlier is detected, raw data (chromatograms, spectra) must be checked for technical errors.
- • Retesting of the series is allowed only according to approved SOPs.
- • For multiple outliers, iterative methods or other tests (e.g., Tukey's test) are required.
- • Dual check (Grubbs + Dixon) for increased reliability.
- • Calculation of cleaned mean (excluding outlier) to assess anomaly impact.
- • Report generation for LIMS archiving.
- • Grubbs G Statistic: < Critical Value
- • Dixon Q Statistic: < Critical Value
- • Alpha: 0.05 (Standard)
- • Dixon's Q Test: For small samples (3 ≤ N ≤ 10).
URS — User Requirements Specification
| ID | Requirement | Criticality | Acceptance criterion |
|---|---|---|---|
| URS-001 | The utility shall accept an input.csv file with exact headers defined in the data contract. | High | The file is processed without manual header editing. |
| URS-002 | The utility shall perform deterministic evaluation for Outlier Detection Grubb Dixon using input values, approved limits and domain rules. | High | Each row receives a PASS / WARNING / FAIL status. |
| URS-003 | The utility shall validate mandatory fields, data types, numeric ranges, units and domain plausibility. | High | Schema, format and conversion errors are explicitly reported. |
| URS-004 | The utility shall identify critical deviations for parameters stated in the method description and specification. | High | A critical deviation causes FAIL or a dedicated critical finding. |
| URS-005 | The utility shall generate output.json with machine-readable results, source values, warnings and failures. | High | JSON is suitable for LIMS/ELN/MES integration, QA/QC review and archival. |
| URS-006 | The result shall not depend on machine learning or undocumented heuristics. | Medium | All decisions are based on explicit rules, thresholds and input values. |
| URS-007 | The system shall preserve traceability between batch/sample, input data, applied rules and final status. | High | The output contains the batch/sample identifier and checked parameters. |
| URS-008 | The documentation shall support IQ/OQ/PQ preparation and inspection discussion. | Medium | URS, FS, CSV/JSON contract and test scenarios are supplied with the utility. |
| URS-009 | The utility shall support batch processing of multiple input.csv rows. | Medium | Each row is evaluated independently; errors in one row do not mask errors in others. |
| URS-010 | The utility shall support a simple operating model: demo mode and execution with input/output files. | Medium | The CLI scenario is reproducible in test and production environments. |
input.csv contract
| # | Field | Type | Sample | Purpose |
|---|---|---|---|---|
| 1 | BatchNumber | string | STAT-SERIES-001 | Batch or lot identifier used for traceability, review and deviation investigation. |
| 2 | Alpha | decimal | 0.05 | Controlled input parameter used by deterministic QC rules and traceable result generation. |
| 3 | Val1 | string / decimal | 10.1 | Controlled input parameter used by deterministic QC rules and traceable result generation. |
| 4 | Val2 | string / decimal | 10.2 | Controlled input parameter used by deterministic QC rules and traceable result generation. |
| 5 | Val3 | string / decimal | 10.0 | Controlled input parameter used by deterministic QC rules and traceable result generation. |
| 6 | Val4 | string / decimal | 10.3 | Controlled input parameter used by deterministic QC rules and traceable result generation. |
| 7 | Val5 | string / decimal | 10.1 | Controlled input parameter used by deterministic QC rules and traceable result generation. |
| 8 | Val6 | string / decimal | 10.2 | Controlled input parameter used by deterministic QC rules and traceable result generation. |
| 9 | Val7 | string / decimal | 10.1 | Controlled input parameter used by deterministic QC rules and traceable result generation. |
| 10 | Val8 | string / decimal | 10.0 | Controlled input parameter used by deterministic QC rules and traceable result generation. |
| 11 | Val9 | string / decimal | 10.2 | Controlled input parameter used by deterministic QC rules and traceable result generation. |
| 12 | Val10 | string / decimal | 10.1 | Controlled input parameter used by deterministic QC rules and traceable result generation. |
BatchNumber,Alpha,Val1,Val2,Val3,Val4,Val5,Val6,Val7,Val8,Val9,Val10 STAT-SERIES-001,0.05,10.1,10.2,10.0,10.3,10.1,10.2,10.1,10.0,10.2,10.1 STAT-SERIES-002,0.05,10.1,10.2,10.0,10.3,10.1,12.5,10.1,10.0,10.2,10.1 STAT-SERIES-003,0.05,5.0,5.1,5.2,5.0,5.1,5.0,5.1,5.2,5.0,5.1
FS — Functional Specification
| ID | Function | Implementation |
|---|---|---|
| FS-001 | CSV import | Read input.csv in UTF-8/CSV-compatible format and validate the header and expected columns. |
| FS-002 | Schema validation | Check mandatory fields, column count, critical missing values and row structure. |
| FS-003 | Type conversion | Convert numeric, flag and text values; invalid formats are recorded as row-level errors. |
| FS-004 | Domain rule engine | Apply domain rules for Outlier Detection Grubb Dixon, including limits from the utility description and approved specification. |
| FS-005 | Status aggregation | Produce final status: FAIL for critical failure, WARNING for non-critical deviation, PASS for conformance. |
| FS-006 | JSON export | Write output.json with detailed checks, source values, warnings, failures and critical findings. |
| FS-007 | Audit support | Keep the result structure suitable for review, deviation investigation, calculation reproduction and IQ/OQ/PQ preparation. |
| FS-008 | Integration contract | Support the production scenario: LIMS/ELN/MES creates input.csv, the utility returns output.json, and the portal displays description and documentation. |
| FS-009 | Error handling | Report errors unambiguously and do not substitute missing values with calculated values unless the rule is explicitly defined. |
| FS-010 | Version control support | Document the utility version, input contract, executable checksum and rule application date. |
Example output.json
{
"utilityId": "outlier-detection-grubb-dixon",
"utilityName": "Outlier_Detection_Grubb_Dixon",
"overallStatus": "PASS|WARNING|FAIL",
"sourceFile": "input.csv",
"checks": [
{
"parameter": "BatchNumber",
"value": "STAT-SERIES-001",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Alpha",
"value": "0.05",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Val1",
"value": "10.1",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Val2",
"value": "10.2",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Val3",
"value": "10.0",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Val4",
"value": "10.3",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Val5",
"value": "10.1",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Val6",
"value": "10.2",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Val7",
"value": "10.1",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Val8",
"value": "10.0",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Val9",
"value": "10.2",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Val10",
"value": "10.1",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
}
],
"criticalFindings": [],
"warnings": [],
"generatedFor": "QA/QC review and LIMS integration"
}
Traceability matrix
| URS | FS | OQ/PQ coverage |
|---|---|---|
| URS-001, URS-003 | FS-001, FS-002, FS-003 | OQ-001/OQ-002/OQ-003 |
| URS-002, URS-004 | FS-004, FS-005 | OQ-004/PQ-001 |
| URS-005, URS-007 | FS-006, FS-007 | OQ-005/PQ-002 |
| URS-008, URS-010 | FS-008, FS-010 | IQ-001/OQ-006 |
OQ/PQ test scenarios
| ID | Scenario | Expected result |
|---|---|---|
| OQ-001 | Valid sample row | PASS or acceptable WARNING according to the rules. |
| OQ-002 | Mandatory column missing | Schema error or FAIL. |
| OQ-003 | Non-numeric value in numeric field | Type-conversion error. |
| OQ-004 | Critical parameter outside limit | FAIL and critical finding. |
| OQ-005 | Multiple rows with different statuses | Independent row-level evaluation. |
| PQ-001 | User real batch/sample | Reviewed result with retained input/output files. |
QA/QC and change control
- Do not rename columns without updating the validator, documentation and test set.
- Retain
input.csv,output.json, executable version, documentation and checksum. - Before production use, perform IQ/OQ/PQ or equivalent CSV/CSA verification.
- Critical limits must be verified against the approved specification, local SOPs and registration dossier.
Included in packages
Lumex QC Suite
A single Lumex package combining the former Lumex and Lumex2 sets: instrumental and general pharmaceutical QC, AAS/ICP, CE, HPLC, NIR/PAT, stability, dissolution, content uniformity, system suitability and statistical control.
OpenRadiology QC Suite
QC package for radiology and diagnostic imaging: radiopharmaceuticals, PET/SPECT, contrast media, iodinated and gadolinium products, plus particle, sterility and endotoxin checks.
Open