桌上放着同一份无糖豆浆、油条和鸡蛋。调查员甲看见油条,在表格里填“营养不好”;调查员乙看见豆浆和鸡蛋,填“营养尚可”。两个人都能讲出理由,但这两个标签放进数据库后,谁也无法判断差异究竟来自早餐,还是来自调查员各自心里的标准。
最直接的补救似乎是把标签换成分数。可分数只是把判断写得更整齐,并不会自动使判断正确。如果一套评分没有说明观察对象、原始信息、计算规则和误差来源,5 分与“营养不好”一样,仍然可能只是研究者意见的数字版本。
把概念变成变量,真正要解决的是这段距离:研究者想理解的是“营养结构”,数据表能够留下的却只是食物名称、份量、营养估值和若干编码。两者之间必须有一套别人能够重复执行、也能够质疑的说明。可计算只是这套说明获得资格的第一关,不是测量已经有效的证明。
概念不会自动变成一列数据
“营养结构”是研究者想理解的概念,蛋白质克数、钠含量和食物类别数是能够记录或计算的变量,操作定义则说明这些变量怎样取得、使用什么单位、缺失时怎么办,以及它们凭什么代表目标概念。三者若混在一起,表格虽然会有数字,作者却说不清数字究竟测了什么。
虚拟早餐研究先把观察单位限定为一家店在调查时段内能够同时购买的一份常见早餐组合。一件油条不是完整的一行,一名顾客一周的饮食也不是。每份组合保留不会重复的 combo_id,同时记录所属店铺的 shop_id。两家店都可能把套餐叫作“经典早餐”,名称不能充当身份证;以后核对照片、删除重复记录或按店铺分析时,真正把材料重新接起来的是编号。
一份早餐从现场进入结论,至少会留下几层不同材料。最靠近现场的是食物名称、份量、价格、店铺和配方来源;根据这些材料得到能量、蛋白质、膳食纤维和钠等营养估值;再按照固定规则产生五个分项、0—10 分总分和“是否低于 6 分”的标记。原始记录、估值和判断不能挤在同一列,也不能让后面的分数覆盖前面的依据。
例如,food_items 可以保留“油条;无糖豆浆;鸡蛋”,has_protein_food 按手册记录是否含明确蛋白质食物,protein_g 则保存整份早餐估计的蛋白质克数。它们描述同一份早餐,却回答不同问题。食品原貌方便追查,0/1 标记便于按统一规则比较,具体克数保留数量差异。删掉其中任何一层,后面的判断都会失去一部分退路。
可复算只是数字的第一道门槛
有些调查表为了省事,让现场人员直接填写总分。这会把操作定义藏进每个人的即时判断里。评分规则若后来修正,只剩总分的数据无法重算;某条记录异常,也无法知道问题出在份量、配方、营养换算还是计分。保留原始材料并不是追求表格越细越好,而是让重要数字可以沿计算过程返回来源。
“没有”“未测”“缺失”和“估算”尤其不能共用一个 0。早餐明确不含蔬菜,has_vegetable 可以填 0;调查员根本没有检查,应当记成缺失;店家未提供配方,但研究者借助相似食物估算了钠,钠可以暂时有数值,同时要把 recipe_estimated 标成 1。若把未测蛋白质写成 0 克,错误会继续生成 0 分,压低总分,最后还可能推高结构失衡比例。软件只看见一个合法数字,不会替研究者猜出这个零原本表示“不知道”。
单位也会沿同一条路影响结论。protein_g = 14.2 应当表示整份早餐估计含 14.2 克蛋白质。有人若把毫克填进同一列,程序照样可以读取,小数位甚至很整齐,含义却已经完全错误。字段名称、单位、允许范围、特殊编码、计算来源和公式版本都需要保存。FAIR 原则强调数据应当可查找、可访问、可互操作和可重用;放在这个案例里,最朴素的要求就是别人不能只拿到一列分数,却无从理解它由什么材料、什么版本算出。
一名没有参加设计的研究者能够从原始记录得到相同总分,证明的是规则写清了。这个结果很重要,因为连复算都做不到,讨论测量是否合理还没有基础。但复算一致最多说明大家用了同一把尺子,尚未说明尺子的刻度适合早餐,也没有说明它覆盖了“营养结构”的全部含义。
公式本身也要有版本。假如营养专家在正式分析前提出,蛋白质 2 分线应当从 18 g 调到 20 g,新规则需要成为另一个明确版本,并说明哪些分析随之重算。旧分数不能被静默覆盖。只要蛋白质克数和旧公式仍在,研究者就能比较两个版本影响了哪些早餐;若数据库只保存总分,规则一改,历史判断便再也无法恢复。
公式越完整,越要看见其中的选择
教学评分包含五个维度,每项 0—2 分。能量在 300—500 kcal 之间得 2 分,220—299.9 或 500.1—650 kcal 得 1 分,低于 220 或高于 650 得 0 分。蛋白质达到 18 g 得 2 分,12—17.9 g 得 1 分,低于 12 g 得 0 分。膳食纤维达到 6 g 得 2 分,3—5.9 g 得 1 分,低于 3 g 得 0 分。
钠不超过 500 mg 得 2 分,500.1—800 mg 得 1 分,超过 800 mg 得 0 分。食物类别达到 4 类得 2 分,3 类得 1 分,只有 1—2 类得 0 分。边界必须写到不会发生两种解释:500 kcal 属于能量 2 分区间,500 mg 钠也属于钠 2 分区间;营养估值先保留到规定精度,再统一计分,不能有的调查员先取整,有的先分类。
拿一份虚拟记录手算:能量 430 kcal、蛋白质 14.2 g、膳食纤维 2.8 g、钠 760 mg、食物类别 3 类。五项依次得到 2、1、0、1、1 分,总分为 5,因此 imbalanced_lt6 记为 1。这只是证明公式怎样运行,不表示现实中某种具体搭配必然得到 5 分。
这份手算还有一个审计作用。若程序后来给出 6 分,研究者不该把差异当成普通的软件误差,而要沿五个分项逐一检查。可能是 2.8 g 纤维被提前四舍五入为 3 g,也可能是钠的单位在导入时改变。只有原始值、计算顺序和公式版本同时保留,这类差异才有机会被定位;一个孤立的总分无法告诉人错误发生在哪里。
五项直接相加还包含了两项选择。每个维度最高都是 2 分,相当于暂时给予相同权重;一个维度的高分又可以补偿另一个维度的低分。两份早餐可能同为 6 分,一份钠较低但蛋白质少,另一份蛋白质较多但钠高,它们的结构并不相同。总分便于汇总,却不能替代五个分项和原始营养指标。
中国居民膳食指南的官方内容可以支持关注食物多样和合理搭配,却不能为上面的具体分值背书。真实研究还需要结合目标人群、正式指南、早餐场景和营养专业判断来论证阈值。引用一个权威文件,不会把教学团队作出的等权和分界选择变成公认标准。
稳定与有效,是两次不同的审问
正式收集以前,两名受训调查员可以独立记录同一批早餐。如果他们经常在“豆沙包算不算明确蛋白质食物”“咸豆花里的少量配菜算不算一类蔬菜”上分歧,说明手册还不够稳定。预测试的价值不在于得到一小批漂亮数据,而在于保留这些争议,记录原判断、分歧原因和修订规则,再让另一批材料接受新版手册。
即使两名调查员后来总能得到相同分数,第二个问题仍然存在:这把尺子是否测中了作者声称的概念。五项评分能够描述一顿早餐的部分营养结构,却没有测量长期饮食、个人需要、微量营养素全貌、食物安全或健康结局。因此,8 分不能被解释成“对所有人都健康”,5 分也不是疾病诊断。稳定地遗漏一部分概念,仍然是遗漏。
研究方法常把重复记录是否接近称为信度,把工具是否测中目标概念称为效度,同时还要单独讨论测量误差。COSMIN 的测量属性资料之所以把这些问题分开,是因为它们不能互相担保。一把每次都多出两公斤的秤很稳定,却没有因此变准确。
店家不提供配方时,仅凭相似餐名估算钠,误差通常比现场称重更难判断。虚拟方案因此从六城各取 20 份,共 120 份早餐做教学性的称重或营养估算复核,并保留 portion_measured、recipe_estimated 等质量标记。这可以检查部分营养估值偏差,不能被称为无误差的金标准,也不能替整套 0—10 分证明效度。后续分析可以排除估算记录再算一次,观察主要比例是否明显变化,而不是假装所有数据同样可靠。
一条阈值,只能服务一个事先说清的问题
0—10 分保留了早餐之间较多差异。把它压成“低于 6 分”与“不低于 6 分”,可以直接回答主要问题中的比例,代价是 0 分与 5 分被放在同一边,6 分与 10 分也被放在另一边。因此数据库必须保存分项和连续总分,不能只留下二分类结果。
主要分析按照事先冻结的低于 6 分计算,同时把低于 5 分和低于 7 分保留为敏感性分析。若三个阈值得出的比例差异很大,研究者得到的不是三个任选其一的答案,而是一项警告:所谓“有多普遍”高度依赖人为分界。论文应当把这种不稳定写进结论,不能只展示最符合原预期的阈值。
变量交给调查团队以前,另一名研究者应当能够随手挑一份早餐,从食品和份量一路重算到营养估值、五个分项、总分和低分标记。算不回来,说明操作定义还没有写完;算得回来,只说明规则终于可以接受下一轮审问。教学评分不会因为公式完整就自动成为现实标准,这正是测量最需要保留的清醒:数字可以很确定,而它代表什么,仍然必须由证据来回答。