qual-coding · 质性研究三级编码助手
1. 这个 Skill 干什么
把一堆原始质性材料(访谈转录、观察记录、开放式问卷、反思日志、课堂实录)做**自下而上的三级编码**,产出可直接放进论文"研究结果"或开题报告"资料分析"一节的编码表和范畴结构。
用的是扎根理论(Glaser & Strauss / Strauss & Corbin / 陈向明)通行的三级编码路径:
**开放编码(初始概念)→ 主轴编码(范畴)→ 选择性编码(核心范畴 + 故事线)**
它替代的不是你的思考,而是**贴标签、归类、编号、统计频次、整理成表**这些机械劳动。判断哪些范畴重要、理论怎么讲,仍然是你做,Skill 不会替你下理论结论。
2. 什么时候触发
真实说法举例:
- "帮我给这段访谈做编码"
- "做个三级编码"
- "质性资料怎么分析"
- "把这些观察记录整理成编码表"
- "开放编码 / 主轴编码 / 选择性编码"
- "访谈文本归纳范畴"
- "做个扎根理论编码"
- "这些材料能不能再抽出几个概念"
**不触发**(转给别的 Skill):
| 情况 | 转给 |
|:---|:---|
| 只有一两句话要看懂意思 | 直接回答,不用开编码 |
| 要写文献综述 | academic-paper / lit-matrix |
| 单篇文献做精读笔记 | lit-note |
| 数据是量表分数、要做 t 检验 | statistical-analysis / statistical-power |
| 要设计访谈提纲(还没收数据) | 本 Skill 只在**已有材料**时启动,提纲设计另行说明 |
3. 开工前必须先确认的三件事
原始材料不到位就动手,后面全白做。开始前一次性问清(用户可以一句话全答,也可以说"你定"):
1. **材料是什么**——访谈转录 / 观察记录 / 开放式问卷 / 反思日志 / 混合?有几份?
2. **分析单位**——按"整份材料"编码,还是按"受访者"编码?访谈一般按受访者,观察记录按事件或时段。
3. **要不要脱敏**——材料里有没有真名、园所名、地名?有的话先脱敏再编码,脱敏规则见 §7。
**材料没给就先要材料。** 不许凭"这类研究一般会说什么"凭空造原始语句——这是本 Skill 的第一红线。
另外要说明的默认值(用户没说就按这个走,但要在输出里写明"本次按默认执行"):
| 参数 | 默认 | 可改 |
|:---|:---|:---|
| 编码路径 | 三级编码(开放→主轴→选择) | 只要开放编码 / 只到主轴 / 做主题分析( thematic analysis) |
| 概念粒度 | 中粒度:一条原始语句抽 1 个初始概念 | 细粒度(逐句)/ 粗粒度(逐段) |
| 输出格式 | Markdown 表格 | CSV / Excel 友好制表符 / 直接给 NVivo 可导入的两列表 |
| 频次统计 | 统计"被编码语句数"和"涉及来源数"两个指标 | 只要其一 |
| 深度 | 标准(三表 + 饱和度自检) | 速览(只出开放编码表)/ 精读(加负向案例与理论备忘录) |
4. 执行流程
第 1 步:材料登记与编号
给每份材料发一个来源号,规则统一为 `S1 / S2 / S3……`(一份访谈或一个观察时段 = 一个来源)。
给每句被编码的原始语句发一个语句号,规则 `S1-01 / S1-02……`(来源号 + 两位流水)。
编号的目的是**让后面每一条概念都能原路追溯回原话**。没有编号的编码等于没做。
如果材料是粘贴的一大段没分句,先按语义断句再编号,断句处不加不改原文字。
第 2 步:开放编码(原始语句 → 初始概念)
逐条过材料,对有实质内容的语句抽一个初始概念。
**命名规范**(这条最容易做坏,单独强调):
- 用**受访者自己的词或贴近口语的短词**,不要一上来就套学术术语。比如受访者说"孩子抢着说,我都插不上嘴",初始概念写"表达欲被激发",不要写"言语互动主动性增强"。
- 概念控制在 **2-8 个字**,是短语不是句子。
- 一条语句只抽 **1 个**概念;一句话里确实有两个独立意思,拆成两条语句分别编号(如 `S1-07a` / `S1-07b`)。
- 不要用"态度积极""认识到位"这种评价性空词,要能看出**具体是什么**。
- 学术术语留到主轴编码阶段再做提升,开放阶段越土越准。
**哪些语句不编码**:
- 纯客套、追问应答("嗯""对""是的")
- 研究者自己的引导语("那你觉得呢?")
- 与研究问题确实无关的离题内容——不删,归入"待判断"区,见 §6
开放编码表格式:
| 语句号 | 原始语句(摘录) | 初始概念 |
|:---|:---|:---|
| S1-03 | "他们抢着说,我插不上嘴" | 表达欲被激发 |
| S1-05 | "平时不说话的那个也举手了" | 沉默幼儿参与 |
原始语句摘录**逐字照抄**,只删不影响意思的口头禅和重复词,不润色、不改错别字、不翻译方言。确实看不懂的地方标 `〔原文如此〕`。
第 3 步:主轴编码(初始概念 → 范畴)
把初始概念按语义聚类成范畴,每个范畴下挂若干概念。
聚类依据只能是**材料内部的意思相近**,不能按"理论上应该归在一起"硬凑。
**每个范畴要给三样东西**:
1. **范畴名**——到这一层可以用学术表述了(如"表达意愿"、"师幼互动结构变化")
2. **下属概念清单**——带回语句号
3. **两个计数**——`被编码语句数` 和 `涉及来源数`
范畴数量一般控制在 **4-9 个**。超过 9 个说明聚类不够,先合并;少于 4 个说明抽得太粗,回去拆。
主轴编码表格式:
| 范畴 | 下属初始概念 | 被编码语句数 | 涉及来源数 |
|:---|:---|:---|:---|
| A 表达意愿 | 表达欲被激发、沉默幼儿参与、主动提问 | 12 | 5/6 |
| B 课堂秩序张力 | 抢话、等待困难、教师介入频次上升 | 8 | 4/6 |
**关于频次,说清楚一件事**:频次只说明**这个意思在材料里出现得多不多**,不说明它重不重要。某个范畴只出现 2 次但直指研究问题,比出现 20 次的常识性内容更有价值。输出里必须写这句提醒,不许让频次看起来像重要性排序。
第 4 步:选择性编码(核心范畴 + 故事线)
从范畴里拎出一个**核心范畴**——能把其他范畴串起来的那个。
然后写一段 **150-300 字的故事线**,说明:核心范畴是什么、其他范畴怎么挂在它上面、材料整体在讲一件什么事。
这部分是本 Skill 唯一允许"加工"的地方,所以:
- 故事线的每一句支撑都必须能指向具体范畴编号(如"见范畴 A、C")
- 判断性表述加 `〔推断〕` 前缀,比如"〔推断〕核心范畴可能是……,但材料里对 X 环节几乎没有涉及,需补访确认"
- **理论饱和度判断必须标 `〔推断〕`**,并且要说明判断依据(后几份材料是否还有新概念出现)
第 5 步:输出总表与自检
把三级编码合成一张总表(§5 模板),然后跑自检清单:
- [ ] 每条初始概念都能追溯到语句号
- [ ] 每条语句号在原始材料里确实存在(抽查 3-5 条)
- [ ] 原始语句逐字照抄,无润色
- [ ] 范畴数在 4-9 区间
- [ ] 频次统计的是语句数,且同时给了来源数
- [ ] 负向案例已单独列出(见 §6)
- [ ] 推断已全部标 `〔推断〕`
- [ ] 敏感信息已脱敏
5. 输出模板
默认四段式,按需输出(用户只要开放编码就只给第一段)。
---
一、材料概览
- 材料类型:访谈转录 ×6 份
- 总规模:约 4,200 字
- 分析单位:按受访者(6 人)
- 脱敏处理:已替换园所名与幼儿姓名
- 本次参数:三级编码 / 中粒度 / Markdown 表 / 标准深度
二、开放编码表
(表格,语句号 - 原始语句 - 初始概念)
三、主轴编码表
(表格,范畴 - 下属概念 - 语句数 - 来源数)
四、选择性编码
- **核心范畴**:……
- **范畴关系**:A → 支撑核心范畴;B、C → 构成张力面;D → 条件
- **故事线**(150-300 字):……
- **理论饱和度**:〔推断〕……,依据:……
五、负向案例与待判断
(见 §6)
六、待补充清单
- 材料里没涉及、但你写论文时会被问到的点
- 建议补访的问题(具体到问法)
---
6. 负向案例(不许丢)
质性分析最容易被审稿人挑的毛病是"只报对自己有利的材料"。所以:
**凡是与已形成的范畴结构不一致、对不上的原始语句,一律单独列进"负向案例"一节**,写清楚它是什么、为什么对不上、可能的解释是什么。
不许因为"不合理论"就在编码阶段悄悄删掉或硬塞进某个范畴。
同理,"待判断"区放那些暂时看不出属于哪个范畴的语句,不硬归类。
7. 脱敏规则
材料里出现以下信息,编码前先替换,并在输出里说明替换规则:
| 类型 | 处理 |
|:---|:---|
| 幼儿 / 教师 / 家长姓名 | 化为 `幼A`、`师B`、`家C`,同一人全程同一代号 |
| 园所名、机构名 | 化为 `园所甲`、`园所乙` |
| 具体地名 | 保留到市级,更细的一律删 |
| 可识别的时间点 | 保留相对时间("上学期末"),删绝对日期 |
脱敏只做替换,**不改语义**。替换后如果影响理解,加一句 `〔脱敏〕` 说明。
8. 铁律(违反即作废)
1. **绝不编造原始语句**。所有被编码的语句必须来自用户给的材料。材料不够就说不够,不许用"类似研究常见表述"来补。
2. **原始语句逐字照抄**。不润色、不纠错、不翻译、不压缩。看不懂标 `〔原文如此〕`。
3. **每条概念必须可追溯**。没有语句号的编码等于没做。
4. **频次不等于重要性**。输出必须写这句提醒。
5. **不删负向案例**。对不上的材料单独成节,不硬塞、不丢弃。
6. **推断必须标 `〔推断〕`**。尤其是核心范畴选择、饱和度判断、范畴间因果关系的说法。
7. **不做量化统计推断**。质性材料不给 p 值、不给相关、不给"显著性差异"。要统计就转 statistical-analysis。
8. **不替用户下理论结论**。可以给出范畴结构和故事线,但"这说明 XX 理论成立"这种话由用户写。
9. **不越级提升概念**。开放编码阶段不许出现学术术语堆砌的概念名。
10. **一次性只处理一批材料**。中途新增材料要说明是并入原有编码还是重新编码,不许静默混入。
9. 材料不足时的降级
| 情况 | 怎么办 |
|:---|:---|
| 只有 1 份访谈(<1000 字) | 照做,但明确标注"材料量不足以支撑饱和度判断,范畴结构为初步结果" |
| 只有摘要或研究者转述,没有原话 | 无法做开放编码。说明原因,改为:基于转述列出"建议追问方向"和"待收集的原始语句类型" |
| 材料是另一种语言 | 编码时保留原文语句,概念名用中文,需要时附中文大意并标明是翻译 |
| 用户只给了研究问题没给材料 | 不编。给出访谈提纲建议和"要编码至少需要几份材料"的判断 |
| 材料本身就是量化的(频数表、量表分) | 转 statistical-analysis,说明质性编码不适用 |
10. 和其他 Skill 的协作
| 你要干什么 | 用哪个 |
|:---|:---|
| 还没收数据,先找方向 | literature-navigator |
| 已有文献,做对比表 | lit-matrix |
| 收完数据,做编码(本 Skill) | **qual-coding** |
| 编码完要写成论文结果章节 | academic-paper |
| 结果里要报统计量 | statistical-analysis |
| 成稿后降重降 AI | deai-paper |
| 写完选刊投稿 | journal-match |
| 单篇文献做精读笔记 | lit-note |
11. 完整输出范例
见 `references/worked-example.md`——一份从原始访谈语料到三级编码全流程的跑通样例,包含开放编码表、主轴编码表、选择性编码、负向案例处理、待补充清单,以及材料不足时的降级示范(含正确与错误两种做法对照)。
**注意**:范例里的语料是为演示格式构造的,只看方法和粒度,**不要照抄任何概念名或范畴名**到你的真实研究里。
还没有评论,先发起一个具体问题。