第 22 课:数据结构与编码
🎯 核心实操目标
学习目标:建立专业的数据字典(Codebook),明确每个变量的名称、标签、值标签、测量类型、缺失值定义。本课你将掌握编码规则设计(含反向题标注),完成 Excel → SPSS/Jamovi/CSV 的格式互转,为下一课数据清洗打好基础。
📋 课前准备(5 分钟自检)
工具/账号
- [ ] Excel 或 WPS(编码与字典制作)
- [ ] Jamovi 2.5+ 或 SPSS 29+(变量定义验证)
- [ ] 第 20 课设计完成的问卷
- [ ] 第 21 课回收的原始数据(如已发完问卷)
数据/素材
- [ ] 问卷题项完整列表(含所有变量名)
- [ ] 反向题清单(来自第 19 课)
应急通道
- 还没回收数据 → 用 Case A 模拟数据集 case_A_questionnaire.csv 练手
- Excel 文件过大卡顿 → 转 CSV(取消所有公式与格式)
场景导入:回收完问卷,第一步不是跑统计
在数据分析的实操环节,常见的一类返工是这样发生的:学生回收完问卷便急着把表格丢进统计软件,结果接连卡壳——变量名是 “AI 焦虑量表第 1 题” 这样的中文长串,软件直接报错;性别一列有的填 “男/女”、有的填 “1/2”,机器无法识别;反向计分题没有任何标记,信度系数 α 莫名其妙跌到 0.3;缺失值有的录 99、有的留空,软件却把 99 当成真实分数算进了均值。
这些问题没有一个出在统计方法上,全部出在数据进入分析之前的结构与编码。换句话说:把人的语言(“非常同意”“工科”“拒答”)翻译成机器能稳定读取的数值与变量名,是一切统计的前置工序。这道工序的成果物,就是本课要建立的数据字典(codebook / data dictionary)——它一次性约定每个变量叫什么、取什么值、值代表什么、属于哪种测量类型、哪些值算缺失。后续的清洗、统计、写论文都以它为准;它不规范,后面每一步都在累积隐患。
原理:为什么用宽表 + 规范编码
在动手建字典之前,先理解一个判断标准:统计软件读的不是 “意思”,而是规整的数值矩阵。 数据结构与编码这道工序,本质是把问卷的原始作答,整理成软件能够无歧义读取的形态。可以从三个角度理解 “为什么要这样做”。
- 为什么用宽表(wide format):因为统计软件以 “一行一受访者、一列一变量” 为默认输入。 在宽表里,第 7 号受访者的全部作答横向排在第 7 行,
Anxiety_1、Strategy_3、Age各占一列。绝大多数问卷统计(信度、相关、回归、t 检验)都假定数据是这种 “个案 × 变量” 的矩形表。与之相对的是长表(long format)——同一受访者占多行、用一列存 “题号”、另一列存 “得分”,它适合重复测量与多层模型,但不是问卷分析的默认形态。本课统一用宽表,正是为了让数据 “开箱即用”。 - 为什么必须把文字编码成数值(coding):因为机器不能直接对文字做运算。 “非常同意” 无法求均值,但把它约定为
5、“非常不同意” 约定为1,李克特量表就能参与计分、相关与回归。编码(coding)就是这套 “文字 → 数值” 的对应规则;它必须事先写定并全程一致,否则 “工科” 一会儿编 3、一会儿编 4,整列数据就报废了。 - 为什么要区分变量类型并显式标缺失:因为类型决定能做什么运算、缺失码决定会不会算错。 把 “性别” 误当连续变量去求 “平均性别 1.6” 是没有意义的;把缺失值
99当成真实分数算进均值,会把整组结果带偏。所以字典里必须为每个变量写明测量类型与缺失值码,让软件知道哪一列能做算术、哪些值要排除在计算之外。
📐 这一步 AI “帮得上” 与 “替不了” 的边界
数据字典是规则性、格式性的工作——给定问卷结构,把它整理成规整的变量表、套上标准命名与编码约定,正是大模型擅长的 “按模板批量产出”。让它起草字典草稿,能省去大量手工填表的时间(见下文实战 D)。
但要记住它的边界:哪道题是反向题、某变量到底是名义还是有序、缺失该编 99 还是留空——这些取决于你的问卷设计意图与测量学判断,模型只能根据字面 “猜测”,可能猜错。它产出的是待你逐行核对的草稿,不是可以直接使用的定稿。本课红线同样适用:到了后续统计课,AI 只负责翻译你已经算出的结果,绝不替你计算或编造任何统计量;数据字典阶段则是 “它起草、你拍板”。
📘 关键术语(首次出现,先对齐定义)
- 数据字典 / 编码本(data dictionary / codebook):逐变量记录其名称、标签、取值、值含义、测量类型与缺失定义的说明表,是数据集的 “使用说明书”,也是清洗与分析的共同依据。
- 宽表(wide format):一行代表一个受访者、一列代表一个变量的矩形数据表。问卷统计的默认输入形态。其对照是长表(long format):同一受访者占多行,用 “变量名 / 取值” 两列纵向堆叠,适合重复测量与多层模型。
- 编码(coding):把作答的文字类别或等级映射为数值的规则(如 “非常同意”=5、“工科”=3)。同一变量的编码必须事先定死、全程一致。
- 变量的测量类型(measurement level):变量所携信息的层级,决定可做哪些运算。常见四类——名义 nominal(仅作分类,取值无大小,如性别 1/2、专业 1/2/3/4);有序 ordinal(有高低次序但间距不必相等,如李克特 1–5、年级 1–4);等距 interval / 等比 ratio(数值连续、可做加减乃至比例,如年龄、答题用时,本课统称 “连续”)。
- 缺失值码(missing value code):专门标记 “无作答” 的约定值(如
99或留空)。它必须落在真实取值范围之外,并在软件中显式声明为缺失,否则会被当成真实分数算入统计。 - 反向计分题(reverse-scored item):题意与所测构念方向相反的题目(如焦虑量表里的 “我能掌控 AI 工具”)。计分前需反转(
6 − 原值),使其方向与同维度其他题一致;详见下文实战与第 23 课。
数据字典的 5 字段标准
一份完整的数据字典,必须为每个变量记录以下 5 个核心字段(下文实战 C 会在此基础上扩成 8 字段的完整模板):
| 字段 | 含义 | 例 |
|---|---|---|
| 变量名 Variable Name | 英文短代号,供统计软件读取 | Anxiety_1 |
| 变量标签 Label | 中文/英文完整描述 | “AI 学习焦虑第 1 题(认知维度)” |
| 值标签 Value Labels | 数值各自对应的含义 | 1=非常不同意, 5=非常同意 |
| 测量类型 Measure | 名义 / 有序 / 连续 | Ordinal(李克特 5 点) |
| 缺失值 Missing | 哪些值代表缺失 | 99 = 缺失,空白 = 缺失 |
实战一:变量命名规范
变量名是给机器看的代号,也是后续每条统计命令引用的 “把手”。命名混乱(中文、空格、随手编号)是新手数据集报错与误用的首要来源。规范的变量名遵循以下 5 条:
命名 5 条规范
- 全英文——避免中文名导致统计软件的编码兼容问题。
- 下划线分隔——用
_连接,不用空格、不用横杠(-在某些软件里会被当作减号)。 - 维度前缀——同一量表用统一前缀(
Anxiety_/Strategy_/Efficacy_),便于批量选列。 - 数字后缀——按问卷题序编号(
Anxiety_1、Anxiety_2……),保持与原问卷可追溯。 - 反向题命名约定——原始列保持普通名(如
Anxiety_4),仅在字典里标注 “反向题=是”;反转列在清洗阶段才生成,统一加_R后缀(Anxiety_4_R = 6 − Anxiety_4,详见第 23 课)。
标准命名表(Case A 示例)
ID — 受访者编号
Age — 年龄(连续)
Gender — 性别(1=男, 2=女)
Grade — 年级(1=大一 ~ 4=大四)
Major_Category — 专业大类(1=文史哲 2=理学 3=工程 4=艺体/其他)
Anxiety_1 — 焦虑题 1
...
Anxiety_4 — 焦虑反向题(原始列;清洗时生成 Anxiety_4_R = 6 - Anxiety_4)
Strategy_1 — 策略题 1
...
Strategy_8 — 策略反向题(原始列;清洗时生成 Strategy_8_R)
Efficacy_7 — 效能感反向题(原始列;清洗时生成 Efficacy_7_R)
Duration_Min — 答题用时(分钟)🧭 与课程数据集对齐
上表对应课程的 Case A 数据集(case_A_questionnaire.csv,原始 N=540,清洗后约 500 行有效;共 33 列 = 6 个人口统计变量 + 焦虑 12 题 + 策略 8 题 + 效能 7 题)。该数据集恰好有 3 道反向题:Anxiety_4、Strategy_8、Efficacy_7。本课只负责在字典里把它们 “标记出来”,反转动作留到第 23 课清洗时执行——这正是命名第 5 条的用意。
Worked Example 一:为 Case A 设计完整编码方案
📋 示例场景:你已用第 20 课设计的问卷回收到 Case A 数据,原始表里性别填的是 “男/女”、专业填的是文字、量表勾选的是 “非常同意” 等选项。现在要把它整理成一份可直接据以建立宽表的编码方案,并正确处理那 3 道反向题。下面逐变量走一遍。
第一步:固定表的形态——宽表,一行一受访者。 Case A 共 540 名受访者、每人作答 27 道量表题加 6 个背景变量,于是目标宽表是 540 行 × 33 列,第一行为变量名。这一步不需要任何统计,只是确认数据的 “骨架” 与软件期望的输入形态一致。
第二步:为每个变量定编码规则。 按变量的测量类型分别处理:
| 变量 | 测量类型 | 编码规则(文字 → 数值) |
|---|---|---|
Gender 性别 | 名义 | 男=1,女=2 |
Grade 年级 | 有序 | 大一=1,大二=2,大三=3,大四=4 |
Major_Category 专业大类 | 名义 | 文史哲=1,理学=2,工程=3,艺体/其他=4 |
Age 年龄、Duration_Min 答题用时 | 连续 | 直接录入数值,不编码 |
Anxiety_1..12 / Strategy_1..8 / Efficacy_1..7 | 有序(李克特 5 点) | 非常不同意=1 … 非常同意=5 |
注意 Gender 与 Major_Category 同为名义变量、都用 1/2/3/4,但数字只是标签、不含大小——绝不能对它们求均值;Grade 虽然也用 1–4,却是有序变量,数字的次序有意义。这一区分会直接决定下一课起能对每列做哪种统计。
第三步:标注反向题,但此刻不反转。 Case A 的 3 道反向题,题意与所测维度相反——例如 Anxiety_4(“我相信我能掌控 AI 工具”,越同意说明越不焦虑)、Strategy_8(“遇到困难我倾向于放弃”,越同意说明策略越差)、Efficacy_7(“我经常怀疑自己的学习能力”,越同意说明效能感越低)。在编码阶段,它们照常按 1–5 录入原始作答,只在字典的 “反向题” 列标 “是”。真正的反转留到清洗时,对每道题执行:
反转列 = 量表最大值 + 1 − 原值,5 点量表即新值 = 6 − 原值。
以 Anxiety_4 为例,清洗时生成新列 Anxiety_4_R = 6 − Anxiety_4:原作答 5 → 1、4 → 2、3 → 3、2 → 4、1 → 5。反转后,Anxiety_4_R 的高分才与 Anxiety_1 等正向题一样代表 “更焦虑”,整个认知焦虑维度的方向才一致,信度系数 α 才不会被这一题拖垮。Strategy_8、Efficacy_7 同理生成 Strategy_8_R、Efficacy_7_R。
⚠️ 这一步最容易做反的两件事
- 不要在录入阶段就把反向题反转。 原始列若被改掉,日后无法追溯受访者的真实勾选,也无法重做。正确顺序是:原始列照录 → 字典标 “是” → 清洗时另生成
_R列。 6 − 原值里的 6 是 “5 点量表最大值 + 1”,不是固定数。 若是 7 点量表,公式相应为8 − 原值;用错常数会把反转算偏。
这份编码方案就是后续一切分析的合同:第 23 课据它反转与清洗,第 24 课起据它跑描述统计、信度、回归。方案没定准,后面每一步都在错误的数值上运算。
实战二:编码规则速查
| 变量类型 | 编码规则 | 例 |
|---|---|---|
| 二分名义(性别) | 1/2 或 0/1 | 男=1, 女=2 |
| 多分类名义(专业) | 1/2/3/4…(顺序无意义) | 1=文史哲, 2=理学, 3=工程, 4=艺体/其他 |
| 有序(年级) | 1/2/3/4(顺序有意义) | 1=大一, 2=大二, 3=大三, 4=大四 |
| 李克特 5 点(量表题) | 1–5(高分代表高同意) | 1=非常不同意 ~ 5=非常同意 |
| 反向题 | 原始列同正向题编码(普通名),分析前生成反转列 | 原始 Anxiety_4 → Anxiety_4_R = 6 − Anxiety_4 |
| 连续(年龄) | 直接填数字 | 18, 19, 20… |
| 缺失值 | 统一用 99 或空白,不混用 | 99 = 拒答 / 空白 = 跳过 |
⚠️ 反向题编码:录入阶段保持原值
反向题在数据录入阶段保持原始得分(同意 = 高分), 反转操作放在数据清洗时做(公式:新值 = 量表最大值 + 1 − 原值)。 错误做法:录入时直接反转 → 后续无法追溯原始作答。
实战三:Excel 数据字典模板
打开 Excel,按以下结构建立 data_dictionary.xlsx:
| 变量名 | 标签 | 类型 | 取值范围 | 值标签 | 缺失值 | 反向题 | 所属维度 |
|---|---|---|---|---|---|---|---|
| ID | 受访者编号 | 整数 | 1–N | — | 无 | — | — |
| Gender | 性别 | 名义 | 1/2 | 1=男, 2=女 | 99 | — | 人口统计 |
| Anxiety_1 | AI 焦虑题 1 | 有序 | 1–5 | 1=非常不同意, 5=非常同意 | 99/空白 | 否 | 认知焦虑 |
| Anxiety_4 | AI 焦虑反向题(原始列,反转后为 Anxiety_4_R) | 有序 | 1–5 | 同上 | 99/空白 | 是 | 认知焦虑 |
| ... | ... | ... | ... | ... | ... | ... | ... |
把这张表保存到项目根目录,所有后续分析(清洗/统计/写论文)都以此为准。课程已提供一份可对照的成品字典 case_A_data_dictionary.md,建议建完自己的表后逐行比对。
实战四:让 AI 起草数据字典(你负责逐行核对)
数据字典是规则性、格式性的工作,正是大模型擅长的环节:把问卷结构交给它,让它按统一模板批量铺出变量表,比手工一行行填快得多。但要牢记上文【原理】中的边界——它产出的是待核对的草稿,反向题判定、名义/有序之分仍需你拍板。下面这段提示词用中文写定角色与输出格式:
【Role】资深数据架构师 + 统计软件实施顾问。
【任务】根据下方问卷结构,为我生成完整的数据字典 Excel 草稿(表格形式)。
【问卷结构】
- 人口统计: ID, 年龄, 性别(1男 2女), 年级(1-4 大一到大四), 专业大类(1-4 文/理/工/艺体)
- AI 学习焦虑量表(12 题, 5 点 Likert): Anxiety_1 到 Anxiety_12
- 认知维度: 1-4
- 情感维度: 5-8
- 行为维度: 9-12
- 反向题: 第 4 题
- 学习策略量表(8 题): Strategy_1 到 Strategy_8, 第 8 题反向
- 学业自我效能感量表(7 题): Efficacy_1 到 Efficacy_7, 第 7 题反向
【输出】Markdown 表格,字段:
变量名 | 标签 | 类型 | 取值范围 | 值标签 | 缺失值 | 反向题 | 所属维度
【特殊要求】
- 反向题在"反向题"列标"是",原始列用普通名;约定反转列命名为 原名+_R(如 Anxiety_4_R),由清洗阶段生成
- 缺失值统一标注为"99/空白"
- 测量类型用国际标准: Nominal/Ordinal/Interval/Ratio实战五:Excel → SPSS / Jamovi 数据导入
Excel → Jamovi(推荐)
- 在 Excel 中确保第一行是变量名(与字典对应)
- 另存为 CSV (Comma delimited) (*.csv) 格式
- Jamovi → Open → 选择 CSV → 自动导入
- 右键变量列 → Setup → 设置 Measure type / Value labels(按字典填)
Excel → SPSS
- 同样另存为 CSV
- SPSS → File → Import Data → CSV Data
- 跟随向导设置变量名 / 类型
- 变量视图(Variable View)填入完整 Value Labels 与 Missing Values
实战六:常见数据问题预防
| 问题 | 预防 |
|---|---|
| 中文变量名导致软件报错 | 全英文命名 |
| 不同问卷平台导出格式不一致 | 统一用问卷星导出 CSV 标准格式 |
| 反向题忘记标记 | 数据字典中显式设 反向题=是 列 |
| 缺失值与 0 混淆 | 缺失统一用 99 或空白,不用 0 |
| Excel 自动把答题时间改成日期 | 答题时间列设为文本格式存储 |
Worked Example 二:跨案例迁移——为 Case C 的 LLM 评估数据编码
第一个 worked example 是问卷量表的编码。第二个换一个完全不同的数据形态,用来说明:“宽表 + 规范编码 + 显式测量类型”这套规则不限于问卷,任何要进统计软件的数据都适用。
这里采用 Case C:LLM 评估数据集(case_C_llm_evaluation.csv)——300 篇文本,每篇分别由三个模型打质量分,列为 Quality_GPT5 / Quality_Claude47 / Quality_Gemini25(各为 Fluency / Accuracy / Coverage 三维的平均,1–5 分)。乍看它和问卷很不一样,但建字典的动作完全一致:
| 变量 | 测量类型 | 编码 / 取值 | 说明 |
|---|---|---|---|
Article_ID | 名义(标识) | PAPER_0001–PAPER_0300 | 论文编号,仅作主键,不参与运算 |
Quality_GPT5 | 连续 | 1.00–5.00 | GPT-5 给该篇的质量分(三维平均) |
Quality_Claude47 | 连续 | 1.00–5.00 | Claude 4.7 给该篇的质量分 |
Quality_Gemini25 | 连续 | 1.00–5.00 | Gemini 2.5 给该篇的质量分 |
关键在于看清数据的结构形态,它决定后续能用哪种统计。Case C 是 “同一篇文本被三个模型分别评分”——三列分数指向同一批对象,互相配对而非独立。识别出这一点,第 25 课才会对它用配对/重复测量方法(如 ttest_rel 配对 t 检验、Friedman 检验),而不是误用独立样本检验。这正是 “数据结构” 一词的分量:结构看错,方法就会选错。
顺带一提:Case C 中 Claude 的 Accuracy 维由 3 名标注者评分,评分者一致性 ICC(2,k)≈0.76——这类 “谁来评、评得一不一致” 的信息也应记进字典的备注,供后续信度讨论引用。本课只需把它登记下来,绝不在此处自行计算或臆造任何一致性数值。
🔁 两个 worked example 的共同点
对比两例:起点不同(一个是问卷量表、一个是模型评分),但走的是同一套动作——定宽表形态 → 逐变量定编码与测量类型 → 看清数据结构(独立 vs 配对)→ 把特殊信息(反向题 / 评分者)登记进字典备注。把变量换成你学科的真实列名,理工、经管、教育、医学都能照搬。
逐要素对照:数据字典 “写砸 vs 写好”
数据结构与编码的成败,集中体现在字典每一格填得是否规整。下面把关键要素逐一拆开,并排对照 “埋雷的写法” 与 “可直接用于分析的写法”。
| 要素 | 写砸 ❌ | 写好 ✅ | 为什么 |
|---|---|---|---|
| 变量名 | AI焦虑第1题、性别 | Anxiety_1、Gender | 中文、空格、横杠会让统计软件报错或截断;全英文 + 下划线才稳定可引用 |
| 测量类型 | 全部留空,或把 Gender 标成连续 | 名义 / 有序 / 连续逐列标明 | 类型决定能做哪种运算;把名义当连续会算出 “平均性别 1.6” 这种无意义结果 |
| 值标签 | 只存数字 1/2/3,不记含义 | 1=男, 2=女;1=非常不同意…5=非常同意 | 没有值标签,半年后自己都不知道 3 代表什么,结果无法解释 |
| 反向题 | 不标注,或录入时已偷偷反转 | 原始列照录 + 字典标 “是”,清洗时另生成 _R | 不标会拉低 α;提前反转则丢失原始作答、无法追溯 |
| 缺失值 | 留空、99、0 混用 | 统一约定 99/空白,并在软件中声明为缺失 | 0 是真实分数;99 不声明会被当真值算进均值,整组结果带偏 |
💡 一句话判据
检验一份字典是否 “写好”,只需逐列问三件事:名字机器读得了吗?类型标了吗?取值/缺失的含义记全了吗? 三者齐备,数据才算 “可分析”。
常见误区与纠正
数据结构与编码阶段,学员的问题高度集中在 “某一格漏了或填歪了”。下表是最高频的几种,照着对号入座即可:
| 常见误区 | 症状 | 纠正方法 |
|---|---|---|
| 变量名带中文/空格 | 导入 Jamovi/SPSS 报错或列名被截断 | 一律改全英文 + 下划线 + 维度前缀 |
| 名义变量当连续用 | 输出里出现 “平均性别”“平均专业” | 字典里把名义标 nominal,分析时只做频次/卡方,不求均值 |
| 反向题漏标或提前反转 | α 异常偏低;或原始作答被覆盖无法追溯 | 原始列照录、字典标 “是”,反转列加 _R、留到清洗阶段 |
| 缺失值与 0 混用 | 软件把 99 当真分、把缺失当 0 算进均值 | 统一 99/空白,并在软件中显式声明为 missing |
| 看错数据结构 | 对配对数据(如 Case C 三列同篇评分)误用独立样本检验 | 先判断列与列是否指向同一批对象,配对就用配对/重复测量方法 |
| 直接采信 AI 草稿 | 模型把某道反向题判成正向,或类型标错 | AI 草稿逐行核对后才定稿;判定权在研究者 |
输出不理想?如何排查与迭代
让 AI 起草的字典,首版常有疏漏——这很正常,按下面顺序小步纠偏,不必推倒重来:
- 先核 “反向题” 列。这是模型最易出错处:它只能从题目字面猜方向,可能漏判或错判。逐题对照你的问卷设计意图,把判错的改过来,并确认每道反向题都约定了
_R反转列。 - 再核 “测量类型” 列。重点检查名义与有序是否混淆(如把
Major_Category标成有序、把Grade标成名义)。哪一列不对就只改哪一列,在原对话里追加 “第 X 列类型应为名义,请改正并说明理由”,而非重发整张表。 - 核取值与缺失是否自洽。看每列 “取值范围” 与 “值标签”“缺失值” 是否对得上(如标了 1–5 却出现 99,需确认 99 已登记为缺失码)。
- 沉淀定稿。一旦核对通过,把这版字典连同提示词存入个人工具箱,下次换数据集只改变量名与维度即可。
一句话
首版不理想不是方法失灵,而是模型的 “字面猜测” 还没对上你的设计意图。先核反向题 → 再核测量类型 → 核取值/缺失自洽 → 回填模板。
边界与局限:编码这一步的前提与失效场景
数据结构与编码是一套把作答 “翻译” 成规整数值的工序。它能消除机读层面的歧义,但有几条边界必须认清,否则会把 “编得整齐” 误当成 “数据没问题”。
| 边界 / 失效场景 | 为什么会这样 | 你应该怎么做 |
|---|---|---|
| 编码规整 ≠ 数据真实可信 | 字典只保证格式可读,管不了受访者是否乱填、样本是否有偏。规整的垃圾仍是垃圾。 | 编码到位后仍须第 23 课的清洗(剔无效样本、查异常值),别因表 “干净” 就跳过。 |
| 测量类型用错,后续方法全错 | 把名义当连续、把有序当名义,会让相关/回归/均值从根上失去意义。 | 拿不准时回到变量定义:取值有无大小、间距是否相等,决定 nominal/ordinal/连续。 |
| 李克特究竟算有序还是连续,有学术争议 | 严格说李克特单题是有序的;但多题量表求均分后,文献中常按近似连续处理以便做回归。 | 单题分析按有序、量表均分按连续是常见折中;在论文方法部分写明你的处理与依据,不默认 “理所当然”。 |
| AI 只能起草,判定权在你 | 模型按字面猜反向题与类型,会出错;它不掌握你的问卷设计意图。 | 草稿逐行核对后才定稿;反向题、类型、缺失约定一律由研究者拍板。 |
| AI 不可代算统计量 | 进入后续统计课,编码好的数据要靠软件计算;让模型 “直接给个 α/相关系数” 等于编造。 | 守住课程红线:AI 只翻译你已算出的结果,绝不替你计算或杜撰任何统计量。 |
🚧 一句话守住底线
规范编码让数据 “机器读得对”,但 “数据本身真不真、方法选得对不对、统计量算得准不准”——这三项判断的责任始终在研究者本人。字典是分析的起点,不是质量的保证书。
📦 本课交付物(提交 AI 初审)
- [ ] 完整数据字典(Excel 或 Markdown 表格):含所有变量的 8 字段(变量名/标签/类型/取值/值标签/缺失/反向题/维度)
- [ ] CSV 原始数据样例:导出问卷星 CSV,截图展示第一行变量名是否符合命名规范
- [ ] Jamovi/SPSS 变量定义截图:所有变量已配好 Measure type + Value Labels
- [ ] 反向题标记清单:列出所有反向题(字典标 “是”),并约定其反转列为 原名_R
🏁 本章小结
把本课凝练成可据以复习的几条要点:
- 核心区分:进入统计软件前,数据要先整理成 “一行一受访者、一列一变量” 的宽表(wide format),并配一份数据字典(codebook)作为后续清洗、统计、写论文的共同依据。
- 为什么这样做:软件读的是规整数值矩阵而非 “意思”——所以要把文字编码成数值、要区分测量类型决定能做哪种运算、要显式标缺失值码避免被当真值算入。
- 三类测量类型:名义(nominal,只分类,不可求均值)、有序(ordinal,有次序如李克特 1–5、年级 1–4)、连续(年龄/用时)。类型标错,后续相关/回归/均值会从根上失去意义。
- 反向题的正确处理:原始列照常按 1–5 录入、字典标 “是”,反转留到清洗阶段,按
新值 = 量表最大值 + 1 − 原值(5 点即6 − 原值)生成_R列。提前反转会丢失原始作答;漏反转会拉低信度 α。 - AI 的角色:数据字典是规则性工作,可让模型起草草稿省时间,但反向题判定、名义/有序之分须由研究者逐行核对、亲自拍板;进入统计阶段后,AI 只翻译已算出的结果,绝不代算或编造统计量。
- 边界要诚实:编码规整不等于数据真实可信,规整的垃圾仍是垃圾;李克特按有序还是连续处理存在学术争议,需在方法部分写明你的选择与依据。
自测清单(可保留逐项打勾)
- [ ] 我能说清宽表与长表的区别,并解释问卷统计为什么默认用宽表。
- [ ] 我的所有变量名是全英文 + 下划线分隔 + 维度前缀。
- [ ] 我能为每个变量正确判定测量类型(名义/有序/连续),不会把名义当连续求均值。
- [ ] 我的数据字典含完整 8 字段(变量名/标签/类型/取值/值标签/缺失/反向题/维度)。
- [ ] 反向题原始列用普通名、字典标 “是”,反转列统一加
_R后缀(如Anxiety_4_R),且我清楚反转在下一课清洗时做、公式为6 − 原值。 - [ ] 我的缺失值统一用 99 或空白并在软件中声明为缺失,没有与 0 混淆。
- [ ] 我能用 Excel/CSV 把数据导入 Jamovi/SPSS 并配好 Measure type 与 Value Labels。
✍️ 思考与练习
下列练习用于把本节概念用起来(区别于 “本课交付物” 里的任务),建议写在你的本地笔记中。
练习 1(反向题编码,紧扣 Case A)。 取 Case A 数据集(含反向题 Anxiety_4、Strategy_8、Efficacy_7,均为 5 点李克特)。写出这三道题在 “录入阶段” 与 “清洗阶段” 各应如何处理,并以 Anxiety_4_R = 6 − Anxiety_4 为例,列出原作答 1/2/3/4/5 反转后的对应值。再说明:若在录入时就把它们反转,会带来什么不可逆的后果。
好答案要点:录入阶段三道题照常按 1–5 录原始作答、字典标 “反向题=是”,反转留到清洗阶段生成
_R列;Anxiety_4_R对应 5→1、4→2、3→3、2→4、1→5;指出提前反转会覆盖原始作答、无法追溯受访者真实勾选,也无法重做,且6来自 “5 点量表最大值 + 1”。
练习 2(测量类型判定,紧扣 Case A)。 对 Case A 的 Gender、Grade、Major_Category、Age、Anxiety_1 五个变量,分别判定其测量类型(名义/有序/连续),并说明 Gender 与 Major_Category 同样用 1/2/3/4 编码,为何都不能对其求均值,而 Grade 的 1–4 与它们有何本质不同。
好答案要点:
Gender名义、Grade有序、Major_Category名义、Age连续、Anxiety_1有序(李克特);Gender/Major_Category的数字仅是类别标签、无大小,求均值无意义(如 “平均专业 2.6” 不可解释);Grade的 1–4 有高低次序,是有序变量,故二者本质不同。
练习 3(识别数据结构,紧扣 Case C)。 取 Case C 数据集(300 篇 × 3 模型,列 Quality_GPT5/Quality_Claude47/Quality_Gemini25)。说明这三列分数之间是 “独立” 还是 “配对” 关系,为什么;并据此判断:要比较三个模型的质量分高低,应选独立样本检验还是配对/重复测量方法。
好答案要点:三列指向同一批 300 篇文本、互相配对(非独立样本);因此比较模型差异应用配对/重复测量方法(如配对 t 检验
ttest_rel、Friedman 检验),而非独立样本 t 检验;点明 “看清数据结构决定方法选择”。
练习 4(边界识别)。 你把问卷结构交给 AI,它返回一份格式完美的数据字典,并 “顺手” 告诉你 “这份数据的 Cronbach's α 约为 0.85”。请指出这里同时踩中本课哪两点(提示:一处涉及字典须由谁核对,一处涉及课程红线),并说明你会怎么处理。
好答案要点:①AI 的字典是草稿,反向题判定与测量类型须研究者逐行核对后才定稿,不可直接采信;②α 必须由统计软件在真实数据上计算,模型 “顺口给出” 属于编造统计量,违反课程红线 “AI 只翻译已算出的结果,绝不代算”;正确处理是核对字典、把 α 留到第 27 课用软件实算。
