先给结论:页数多于对象数量,通常不是“重复行”本身,而是同一对象被不同维度拆成了多行;页数少于对象数量,则更可能是合并规则把不同对象误判为同一对象。去重的关键不是删行,而是先确定“什么算一个对象”,再决定用哪一列做唯一标识,最后用一份可复核的对照表验证合并结果。
报告页数通常来自工具的分页、分组或导出切分,而对象数量来自你心里的统计单位。两者不一致时,先判断方向。页数明显多于对象数量,常见原因是同一对象同时带有多个匹配变体、多个地区或多个来源标签,每一条都占一行。页数少于对象数量,则常见于工具按某种相似度做了折叠,或你的对象清单里存在同一实体的不同写法,被工具合并成了一条。
这两种情况的处理方向相反。前者要去掉冗余维度,后者要拆开误合并。若直接对整份报告做去重,很可能把本该保留的多地区对象也删掉,导致后续统计口径被悄悄改小。
解释一:维度拆分。报告里每一行并不是一个独立对象,而是“对象×维度”的组合。例如同一个对象在桌面端和移动端各一行,或在两个来源中各一行。此时对象数量没变,只是行数被维度放大了。判断证据是:任选一行,看是否存在另一个对象名完全相同、只有某个标签列不同的行。如果有,基本可以确认是维度拆分。
解释二:相似度合并。工具按名称相似、包含关系或词形归并,把多个对象压成一条。判断证据是:某一行里出现用分隔符连接的多个名称,或备注列记录了被合并项;同时你的原始清单里确实存在这些被合并的名称。若合并后的对象数量恰好等于去重后的清单数量,说明工具做了归并,而不是漏抓。
还有一种容易被忽略的情况:分页导致的重复。同一对象跨页出现,往往因为排序不稳定或导出时按时间切片。它的证据是重复行内容完全一致,且集中在页边界附近。这与前两种解释不同,处理时只需按对象标识去重,不必改动维度列。
要区分上述解释,先建立一个唯一标识。可行做法是:从原始清单中选一列作为对象主键,例如内部编号、规范名称或你自建的稳定编码。若没有现成主键,就用“规范名称+地区+设备”拼一个临时键,但要在表头注明这是假设口径。
这个动作的结果会直接决定下一步:主键去重后数量吻合,就可以进入指标汇总;不吻合,就先修名称或补主键,而不是继续调报告。
假设你的对象清单有 120 个,报告导出 300 行。按整行去重后剩 150 行,仍多于 120。此时不要急着删 30 行。先按对象主键去重,若得到 120 个不重复主键,说明多出的 30 行是维度拆分,保留即可。若得到 100 个主键,说明有 20 个对象被合并或写法不一致,需要回到清单核对名称。这个例子的数字只用于说明比较方法,不代表任何工具的实际表现。
判断依据是:主键去重后的数量与清单数量的差值,比整行去重后的差值更能说明问题出在维度还是对象本身。差值方向不同,修复动作也不同。
去重不是一次性动作。建议保留三样东西:原始报告、主键列、以及一份“合并与拆分说明”,记录哪些名称被归并、哪些维度被保留。这样下次报告页数再次变化时,你能快速判断是新维度加入,还是合并规则改变。若工具本身提供了分组或导出设置,具体名称和位置需要以你当前使用的版本为准,不要凭旧印象操作。
最后提醒一点:页数、行数或某项计数归零,都不能单独证明去重正确。它也可能来自筛选条件变化、导出范围缩小或字段缺失。只有把主键数量与对象清单对齐,并留下对照记录,去重结果才可复核、可交接。