先给一个有条件的结论:在多数查询工具里,空值通常表示“没有拿到可用数据”,零值通常表示“拿到了数据,且这个指标的结果是0”。但这个结论只在接口或导出结构把两者分开表达时成立;如果工具把缺失统一填成0,或者把0显示成空白,就必须回到原始字段和查询条件去判断,不能直接照搬。
空值一般来自三种情况:查询条件没有匹配到任何记录、字段本身不适用于该记录、或者数据源没有返回该字段。零值则通常意味着记录存在,只是在某个可计数的指标上结果为0,例如某段时间内的点击次数、展示次数或记录条数。判断时先看同一行里其他字段是否完整:如果其他字段有值,只有目标字段为空,更可能是字段不适用;如果整行都缺,更可能是没有匹配到记录。
假设你用小样本测试时,工具对无数据返回空字符串,对真实零返回数字0,两者能区分。把样本扩大到全部关键词后,导出的CSV却把所有空值写成了0。这时如果继续按“0代表真实为零”处理,就会把大量未获取到数据的词误判成表现差。要验证这一点,可以抽查几条在工具界面里显示为空的记录,看它们在导出文件里是否变成了0;如果确实如此,说明问题出在导出环节,而不是查询结果本身。这个反例说明:小样本成立的前提是导出格式没有改变字段含义,一旦格式被统一填充,结论就失效。
可以按下面顺序做一次小规模验证:
如果三处表现一致,说明工具本身没有区分,需要靠其他字段辅助判断;如果只有导出文件合并了,就应优先修导出逻辑,而不是改查询条件。
能拿到原始字段时,保留空值和零值的区别,并在后续统计中把空值单独归为“未获取”,不要并入0。拿不到原始字段时,至少给空值加一个显式标记,例如在导出后用单独列记录“该字段是否可用”,再决定这条记录是否参与汇总。这样做的结果是:后续分析不会把缺失当成低表现,也不会因为一次导出格式变化就推翻前面的判断。