别让 Excel 毁了你的科研:数据录入的“生死红线”
- 2026-09-20 11:48:29
别让 Excel 毁了你的科研:数据录入的“生死红线”你是不是这样录数据的? 打开 Excel,第一行写上“姓名、性别、诊断”,然后就开始填。遇到不确定的填个“?”,遇到没查到的空着,遇到同一种药有时候写“阿司匹林”有时候写“Asp”。 三个月后,当你把这表格发给统计师,你会收到一句冷冰冰的回复: “数据太乱,没法算,回去重搞。” 今天我们就来聊聊,怎么建立一个 “机器喜欢” 的数据库,而不是 “眼睛喜欢” 的表格。 Excel 的原罪:它太“自由”了 Excel 是个好用的电子表格,但作为数据库,它有两个致命弱点: 没有约束 :你可以在“年龄”栏里填“56岁”,也可以填“大概50多”。但统计软件只能识别数字,它看不懂汉字。 容易手滑 :拖拽复制时,很容易把上一行的数据覆盖到下一行,你自己还完全没发现。 对于严肃的临床研究(特别是前瞻性研究),我们强烈推荐使用专业工具,如 EpiData 或 REDCap 。 EpiData :免费、轻量、无需联网。它的杀手锏是 “双录入核查” (两个人分别录一遍,软件自动找不同),能把录入错误率降到几乎为零。 REDCap :Web端,高大上,多中心研究标配。能设置逻辑跳转(选了“女性”自动跳过“前列腺疾病”选项)。 如果你非要用 Excel,请遵守“保命法则” 我知道,90% 的研究生和医生最后还是会用 Excel,因为顺手。 既然要用,就必须遵守以下 “数据录入铁律” 。遵守这些,统计师会把你供起来;不遵守,就是给自己挖坑。 1. 一行一人,一列一指标(Tidy Data 原则) 行(Row) :每一行代表一个观测对象(一个病人)。绝对不要把同一个病人的复查数据写在下一行! 列(Column) :每一列代表一个变量。 禁忌 : 绝对禁止合并单元格! 合并单元格是数据处理的噩梦。 2. 也是最重要的:把“汉字”变成“数字代码” 统计软件(SPSS/R/SAS)本质上是数学软件,它们喜欢数字。 性别 :不要填“男/女”,要填 1 和 2 。 吸烟 :不要填“是/否”,要填 1 和 0 。 你要建立一个单独的 Sheet 叫“Codebook(编码本)” ,在里面记录: 性别:1=男,2=女 结局:0=存活,1=死亡 为什么? 如果你填汉字,很容易出现:“男”、“男性”、“男 ”(带空格)。在软件眼里,这是三个不同的性别。用数字 1 ,永远不会错。 3. 处理“缺失值”的规矩 如果某个数据没采到(比如病人没做这个检查): 正确做法 :留空(什么都不填),或者填一个不可能出现的数字(如 -9 或 -999 ,并在编码本里注明)。 错误做法 :填“未查”、“/”、“NA”、“?”。一旦这一列混入了汉字或符号,整列都会被当成字符型变量,无法计算平均值。 4. 变量名(列头)请用英文 第一行的标题,不要写“入院收缩压(mmHg)”,太长且含特殊符号。 请写: SBPadmission 或 sbpin 。 统计软件对中文变量名的支持往往不好,容易乱码。 一个“完美”Excel 数据库的示范 ID (编号)Age (年龄)Sex (1男2女)Group (1试验2对照)SBP (收缩压)Outcome (0活1死)001561114500026422132100345111280 看着是不是很枯燥? 对,这就对了! 给人看的表格要花哨(合并、加粗、彩色);给机器算的表格要枯燥(纯数字、无格式)。 数据录入前的“三查” 在开始大规模录入病历前,做这三件事: 查变量类型 :回顾第4天内容,确保血压录的是数值,而不是“高/低”。 查单位统一 :肌酐有的化验单是 mg/dL,有的是 μmol/L。录入前必须换算统一,不要在数据库里混着填。 查逻辑界值 :如果你用 Excel,可以利用【数据验证】功能。 比如设置“收缩压”这一列,只能输入 50-300 之间的整数。如果你手滑输成 1400,Excel 会自动报错弹窗。这能救你的命! 今天的练习(找茬) 请看下面这个 Excel 录入片段,找出至少 3个 会导致后续无法分析的致命错误:
PART 01
PART 02
PART 03
PART 04
PART 05
本文来自网友投稿或网络内容,如有侵犯您的权益请联系我们删除,联系邮箱:wyl860211@qq.com 。