3. 批次稳定性分析的数据清洗与预处理
批次稳定性分析的数据通常来自多个批次、多个时间点、多个检测项目,甚至可能来自不同仪器或不同实验室。原始数据几乎不可能直接用于统计建模:缺失值会让均值与方差失真,异常值会严重拉偏回归斜率,时间戳格式不统一会导致趋势曲线错位,批次编号写法不一致会让分组统计把同一批拆成两批,而不同量纲的变量(如含量 %、水分 %、pH、有关物质 %)直接进入多变量模型时,数值大的变量会主导结果。因此,数据清洗与预处理不是"可选的准备工作",而是决定后续稳定性结论是否可信的关键环节。
缺失值的识别与处理
首先要区分缺失的类型。稳定性数据中常见的缺失有三类:一是随机缺失,如某次检测因样品量不足未做;二是系统性缺失,如某批次在长期试验第 9 个月未取样;三是结构性缺失,如加速试验本就不设 12 个月点。结构性缺失不应填补,而应在分析时按设计排除。对随机缺失,若缺失比例很低(例如单个时间点缺失率低于 5%),可采用同批次相邻时间点的线性插值;若某批次某指标连续缺失两个及以上时间点,插值会制造虚假趋势,更稳妥的做法是标记为缺失并在回归中按可用点拟合,同时记录缺失原因。
示例:某产品 3 个批次在 0、3、6、9、12 月测含量,批次 B 在 6 月缺失。若 3 月为 99.2%、9 月为 98.6%,线性插值得 6 月约 98.9%,可作为参考值,但必须在数据表中标注"插值"来源,避免与实测值混用。
异常值的判定与处置
异常值不能简单删除。建议先做技术性排查:核对原始记录、色谱图、称量数据,判断是否为录入错误、单位错误(如把 0.52% 录成 5.2%)或仪器故障。确认是技术错误则更正;确认是真实但极端的结果,则应保留并单独说明,因为它可能正是稳定性问题的信号。统计判定可用箱线图法则(超出 Q1−1.5IQR 或 Q3+1.5IQR)或按批次计算 Z 分数(|Z|>3 视为可疑)。对稳定性趋势分析,更推荐残差法:先对每批次拟合时间—指标线性模型,再看残差是否异常,这样能避免把正常的批次间差异误判为异常值。
时间对齐与批次对齐
时间对齐的核心是把"检测日期"转换为"相对于 0 月的月数"。例如 0 月为 2024-03-15,某次检测为 2024-09-20,则应记为第 6 月而非按日历月粗略相减。若同一时间点有多次平行检测,应先按时间点求均值再进入趋势分析,而不是把平行样当作独立时间点。批次对齐则是统一批次编号规则,例如把"20240301A""B240301-1""批号 240301 甲"统一映射为标准批次码,并建立批次—时间—指标的三维数据表(长表格式),便于分组回归。
变量标准化与数据转换
当稳定性分析涉及多指标综合评价(如同时考察含量、有关物质、水分、pH),各指标量纲不同,直接加权或做主成分分析会被数值大的变量主导。常用做法是 Z 分数标准化:对每个指标减去均值再除以标准差,使各变量均值为 0、标准差为 1。需要注意,标准化参数(均值、标准差)应基于同一分析数据集计算并记录,若后续新增批次,应使用原参数变换以保持可比性,而不是重新计算。
数据转换则用于改善分布形态和线性关系。例如有关物质含量常呈右偏分布,取对数后可更接近正态;降解数据若服从一级动力学,对含量取对数后与时间呈线性,回归斜率即为降解速率常数。转换后必须在报告中说明转换方式,因为转换会改变参数的物理含义。
一份可执行的数据清洗记录表
为保证可追溯,建议每个数据集配套一张清洗记录表,至少包含以下字段:批次码、指标、时间点(相对月数)、原始值、处理类型(保留/插值/更正/标记异常/排除)、处理依据、处理人、日期。下表为示例片段(数值为教学假设):
| 批次码 | 指标 | 时间点 | 原始值 | 处理类型 | 处理依据 |
|---|---|---|---|---|---|
| B240301 | 含量/% | 6 | — | 线性插值 | 3月99.2、9月98.6,缺失率低 |
| B240302 | 有关物质/% | 9 | 5.20 | 更正 | 原始记录为0.52,录入小数点错误 |
| B240303 | 水分/% | 12 | 0.85 | 标记异常 | 残差Z=3.4,复核为真实高值,保留 |
| B240301 | pH | 12 | — | 结构性缺失 | 长期试验未设12月pH检测,不填补 |
总之,数据清洗与预处理的目标不是把数据"修得漂亮",而是让每一个进入模型的数值都有来源、有依据、有标记。缺失值分类处理、异常值技术排查优先、时间与批次统一对齐、标准化参数固定记录、转换方式明确说明,这五步做到位,后续的稳定性趋势判断和有效期评估才站得住脚。