问卷数据怎么分析?样本量、卡方与相关系数选型
问卷回收了两百份,表格打开却不知道该先算什么——做调研卡住的往往是这一步。调研数据的分析方法选型,指的是先确认你要回答哪类问题、手里那几列是数值还是分类,再决定用变异系数比波动、用卡方检验看分类关联、用相关系数看数值共变;而样本量决定这些结论最终能不能站得住。方法选错,公式算得再准也答不了你的问题。
先定你要回答的是哪类问题
选统计量只看两件事:你想回答的问题形态,以及手里那几列数据是数值还是分类, 公式都是跟着这两件事走的。 跳过这一步直接找公式,常见的后果是把类别编号当数值去算相关系数, 或者拿一列连续数据去凑列联表。
| 你想回答的问题 | 需要的列类型 | 用哪个统计量 | 对样本量的门槛 |
|---|---|---|---|
| 这组数波动大不大、两组谁更稳 | 一列数值(两组各一列) | 变异系数 CV | 无硬性门槛,但 n 小于 10 时标准差本身就不稳 |
| 两个分类变量之间有没有关联 | 两列分类 | 卡方检验 | 每格期望频数不小于 5,否则改校正或 Fisher |
| 两个数值变量是否同涨同落 | 两列数值 | 相关系数(皮尔逊 r) | n 越小临界 r 越高,30 份需 r 达 0.361 |
| 能不能用 x 去预测 y、预测误差多大 | 两列数值 | 线性回归 | 同相关系数,另需检查残差是否随机 |
| 要收多少份问卷才敢下结论 | 设计阶段,还没有数据 | 样本量计算 | 由置信水平与误差幅度反推 |
列类型判错,后面每一步都会错;表中门槛的具体口径见对应章节。
数值列和分类列怎么分
分辨办法是问一句:这列的数字能不能做加减平均,平均出来的值有意义吗。 月消费 1800 元和 2200 元平均得 2000 元,有意义,是数值列; 把「男=1、女=2」平均得 1.5,没有意义,是分类列。
设计阶段和分析阶段用的不是同一个工具
样本量计算是开题时做的事,另外三个是数据到手之后做的事。很多人把样本量当成一张 开题报告里的表格,填完就忘,等到分析阶段才发现 30 份数据撑不起任何显著结论。 这两头其实是连着的:样本量不是形式要求,它是你后面能下多强结论的上限。
- 开题阶段先把样本量定下来:按置信水平、误差幅度和预计比例算出需要多少份有效样本,并按回收率倒推要发出多少份。
- 把每一列标成数值还是分类:数据回收后第一步做列类型标注,顺序量表单独标出来,它的用法和纯分类不同。
- 按问题形态和列类型选统计量:照上面那张选型表对号入座,一个问题对应一个统计量,不要一上来就全算一遍。
- 回头核对样本量够不够支撑结论:期望频数、临界 r 都要查一遍。不达标就缩小结论范围或补样本,别硬套 p 值。
开题先定样本量:385 份是怎么来的
95% 置信水平、误差幅度 ±5 个百分点、总体比例按偏保守的 0.5 代入,算出来需要 385 份有效样本,这就是 385 的出处。 那个被到处引用的 385 不是经验数字,三个条件换一个,结果就跟着变。
公式与一步步代入
式中 z 由置信水平决定(95% 对应 1.96,99% 对应 2.576),p 是预计的总体比例,e 是允许的误差幅度。代入 95% 置信、p=0.5、e=0.05:
p 取 0.5 是因为 p(1−p) 在 0.5 处取到峰值,此时所需样本量更大。 换句话说,在对总体比例一无所知时按 0.5 算,是一个偏安全的做法; 若已有预调研显示支持率约 0.2,代入 0.2 只需约 246 份。
| 误差幅度 | 95% 置信水平 | 99% 置信水平 |
|---|---|---|
| ±3 个百分点 | 1068 份 | 1844 份 |
| ±5 个百分点 | 385 份 | 664 份 |
| ±8 个百分点 | 151 份 | 260 份 |
| ±10 个百分点 | 97 份 | 166 份 |
按 p=0.5、无限总体计算并向上取整,结果为估算。误差幅度收窄一半,样本量约变成四倍。
这张表里有个值得记住的规律:误差幅度在分母上是平方项,把误差从 ±5 个百分点收到 ±3 个百分点,样本量要从 385 涨到 1068,接近三倍。所以预算有限时,调低置信水平省下的量远不如放宽一点误差幅度来得多。
总体只有两千人,样本量能降到约 323 份
上面的公式假设总体规模无限大。当总体本身不大(一所学校、一家公司、一个小区), 用有限总体校正可以把样本量降下来:
其中 n₀ 是未校正的样本量,N 是总体规模。总体 2000 人、n₀ 取 384.16, 校正后约 323 份;总体 500 人时,只要约 218 份。 这一步常被省略,结果是在一个几百人的总体里按 385 份去发问卷,白做了很多工作量。
一列数值:用变异系数比两组谁更稳
变异系数是标准差除以均值,把单位和量级都约掉,所以它能比较两组均值差很远的数据 谁波动更大。两组数据在同一量级、同一单位时,直接比标准差就够,不必多算这一步。
国家统计局的定义:变异系数是测度数据变异程度的相对统计量, 用于比较平均数不同的两个或多个样本数据的变异程度,是标准差与其平均值之比。
实算:标准差大的那家,波动反而小
两家门店各取连续 5 天的日营业额(单位:万元)。A 店:1.6、1.8、2.0、2.2、2.4;B 店:0.35、0.45、0.50、0.55、0.65。按样本标准差(除以 n−1)算:
| 门店 | 均值 | 样本标准差 | 变异系数 CV | 相对波动 |
|---|---|---|---|---|
| A 店 | 2.00 万元 | 约 3162 元 | 约 15.8% | 更稳 |
| B 店 | 0.50 万元 | 约 1118 元 | 约 22.4% | 波动更大 |
标准差口径为样本标准差,结果为估算并保留到小数后一位。
A 店的标准差约 3162 元,几乎是 B 店 1118 元的三倍, 但把各自的营业额体量除掉之后,A 店的相对波动反而更小。这就是变异系数存在的理由:绝对波动受体量左右,相对波动才可比。在比较不同规模门店的经营稳定性、不同量程仪器的测量重复性(化学分析里常叫 相对标准偏差 RSD)时,都是同一个道理。
哪些数据不要用变异系数
两列分类:卡方检验先过期望频数
两列都是分类变量(性别、是否付费、城市等级)时用卡方检验, 但动手前要先确认每个格子的期望频数都不小于 5。这一条是卡方近似成立的前提, 不是可选的建议。
四格表实算:期望频数、χ² 与 p 值
假设回收 200 份有效问卷,问「是否愿意为会员付费」,按性别分组后得到这张四格表: 男性 100 人中愿意 60 人、不愿意 40 人;女性 100 人中愿意 45 人、不愿意 55 人。 期望频数按「行合计 × 列合计 ÷ 总计」算:
四格期望频数都不小于 5,门槛通过。再按定义式求 χ²:
| 指标 | 不做连续性校正 | 做 Yates 连续性校正 |
|---|---|---|
| χ² 值 | 约 4.51 | 约 3.93 |
| 自由度 df | 1 | 1 |
| 0.05 临界值 | 3.841 | 3.841 |
| 双尾 p 值 | 约 0.034 | 约 0.047 |
| 结论 | 差异显著 | 差异显著,但很勉强 |
同一张四格表,校正与否的 p 值分别落在 0.05 两侧附近,结果为估算。
Yates 校正会让 p 从约 0.034 变到约 0.047
这是本题里很值得留意的一处:同一批数据,只因为是否做连续性校正,p 值就从约 0.034 挪到约 0.047,一个看着稳当、一个贴着 0.05 的线。四格表的卡方近似在格子频数不大时会偏乐观, Yates 校正就是把这份乐观扣回去,公式里把每个 |观测 − 期望| 先减 0.5 再平方。
所以报告里写「p<0.05,性别与付费意愿有关」之前,先说清用的是哪种算法。 期望频数的处理口径通常是这样分的:
- 四格全部期望频数 ≥5 且总频数 ≥40
- 直接用不校正的卡方。
- 有格子期望频数在 1 到 5 之间,总频数 ≥40
- 用 Yates 连续性校正的卡方。
- 有格子期望频数 <1,或总频数 <40
- 不用卡方,改 Fisher 确切概率法。
- 更大的列联表,期望频数 <5 的格子超过两成
- 合并意义相近的类别后重算。
- 同一批人前后两次测量的配对设计
- 独立性卡方不适用,改 McNemar 检验。
- 显著之后还要回答关联有多强
- 补算克拉默 V 等效应量,卡方值本身随样本量放大。
两列数值:相关系数要和样本量一起看
同一个 r 值在不同样本量下结论会相反:r=0.30 在 30 份样本里判不显著, 在 50 份样本里就算显著。所以相关系数不能单独看数值大小。
临界 r 对照表:样本量越小,门槛越高
皮尔逊相关系数的显著性通过 t 统计量判定,自由度 df = n − 2。 下表是双尾 0.05 水平下,各样本量对应的临界 |r|:
| 样本量 n | 自由度 df | 0.05 显著所需 |r| | r=0.30 时的结论 |
|---|---|---|---|
| 10 | 8 | 0.632 | 不显著 |
| 20 | 18 | 0.444 | 不显著 |
| 30 | 28 | 0.361 | 不显著 |
| 50 | 48 | 0.279 | 显著 |
| 100 | 98 | 0.197 | 显著 |
| 200 | 198 | 0.139 | 显著 |
按双尾 0.05 水平由 t 分布换算,数值保留三位小数,结果为估算。
这张表能解释一个常见困惑:预调研发了 20 份,算出 r=0.40 看着不低, 却被审稿人指出不显著——因为 20 份的门槛是 0.444。样本量不足时,真实存在的关系也可能检不出来。这正是前面那句「样本量是结论强度的上限」的具体含义。
r 显著之后再看 r² 和回归
显著解决的是「这个关系是不是抽样波动造成的」,强弱要看决定系数 r²:
r=0.30 在 100 份样本里显著,但只解释约 9% 的变异,剩下九成以上由别的因素决定。 报告里把 r、r² 和 n 三个数一起给出来,读者才判断得了这个结论值多少分量。 如果接下来要用一个变量去预测另一个(比如用月消费预测续费概率), 就从相关走到回归,看回归系数和残差。
容易把结论算歪的四个地方
调研数据出错多半不在公式,而在样本量不足、列类型用错、把显著当成关联强、 以及把相关当成因果这四处。公式有计算器兜着,这四处只能靠人判断。
- 样本量不足就下强结论
- 30 份数据的临界 r 是 0.361,期望频数也容易破 5。样本撑不住时把结论写成「初步观察」而不是「证明」。
- 把类别编号当数值算
- 「男=1、女=2」算出的皮尔逊 r 没有意义。分类列只进频数方法。
- 只报 p 值不报效应量
- 卡方值随样本量等比放大。p 值回答有没有,克拉默 V 和 r² 回答有多强,两者都要给。
- 在均值接近 0 的数据上用变异系数
- 收益率、净利润、温差这类数据的 CV 会被放大甚至变号,改用标准差或四分位距。
- 口径中途换了也不记录
- 样本标准差(除以 n−1)和总体标准差(除以 n)算出的 CV 不同,全文要统一并在方法里写明。
- 把相关写成因果
- 一张问卷表算出的 r 定不了因果方向,报告里用「呈正相关」而非「导致」。
按「先定样本量 → 标注列类型 → 对号选统计量 → 回头核对门槛」这四步走一遍, 把你表里的数字分别填进样本量计算器、变异系数计算器、卡方检验计算器和相关系数计算器, 每一步的结论能不能下,当场就看得出来。
常见问题
- 问卷调查要发多少份才够,385 份样本量是怎么算出来的?
- 385 份对应的条件是:95% 置信水平、误差幅度 ±5 个百分点、总体比例未知时按偏保守的 0.5 代入。把 z=1.96、p=0.5、e=0.05 代进 n = z²p(1−p)/e²,得到 384.16,向上取整就是 385 份有效样本。要注意这是「有效样本」而不是「发出份数」,按七成左右的有效回收率倒推,实际要发出约 550 份。如果总体本身不大(例如全校 2000 人),再做有限总体校正可以降到约 323 份。具体数字用样本量计算器按你的置信水平和误差幅度算一遍更稳。
- 变异系数和标准差有什么区别,什么时候该用变异系数?
- 标准差带单位、看的是绝对波动;变异系数是标准差除以均值,无量纲,看的是相对波动。两组数据均值差很远时,标准差没法直接比大小,这时候才需要变异系数。举个例子:A 店日营业额均值 2 万元、标准差约 3162 元,B 店均值 0.5 万元、标准差约 1118 元。A 店标准差大得多,但变异系数 15.8% 小于 B 店的 22.4%,相对而言 A 店经营更稳。同一量级、同一单位的数据直接比标准差就够,不必多算一步。
- 相关系数 r 要多大才算显著,和样本量有关系吗?
- 关系很大,样本量越小,显著所需的 r 越高。双尾 0.05 水平下,10 份数据要 |r| 达到 0.632,20 份要 0.444,30 份要 0.361,50 份只要 0.279,100 份要 0.197,200 份要 0.139。所以同一个 r=0.30,在 30 份样本里判不显著,在 50 份样本里就成了显著结果。这也说明显著性不等于关联强度:r=0.30 的决定系数 r² 只有 0.09,意思是只解释了约 9% 的变异。判读时要把 r、r² 和样本量三个数一起报。
- 卡方检验的期望频数小于 5 怎么办,还能用卡方吗?
- 先看小于 5 的格子占多少。通行口径是:期望频数都不小于 5 时直接用卡方;四格表里有格子落在 1 到 5 之间、且总频数不小于 40 时,改用连续性校正的卡方;有格子期望频数小于 1,或总频数小于 40,就不再用卡方,换 Fisher 确切概率法。更大的列联表若期望频数小于 5 的格子超过两成,常见做法是合并意义相近的类别再算。注意期望频数是算出来的理论值,不是你表里的实际人数,用卡方检验计算器时它会一并给出来,别拿观测频数去对这条门槛。
- 问卷里性别和付费意愿的关联,卡方检验和相关系数怎么选?
- 性别和付费意愿都是分类变量,选卡方检验。相关系数(皮尔逊 r)要求两列都是数值型的连续数据,把「男=1、女=2」这种编号丢进去算出来的 r 没有意义,因为类别编号的大小关系是人为指定的。判断规则很简单:两列分类看卡方,两列数值看皮尔逊 r,一列数值一列有序等级可以考虑斯皮尔曼秩相关。另外卡方只回答「有没有关联」,关联强弱要再算克拉默 V 等效应量。
- 变异系数算出来是负数或者特别大,是数据错了吗?
- 不一定是录入错,更可能是这组数据不适合用变异系数。变异系数的分母是均值,它要求数据是同向的正值(营业额、身高、工时、价格)。出现负数,说明均值为负,比值的正负号已经失去「波动大小」的含义;数值特别大(比如几百以上),往往是均值接近 0 把比值放大了。收益率、净利润、温差、温度这类可正可负、零点由人定义的数据,都不要用变异系数,改用标准差或四分位距描述离散程度。
- 相关系数显著就说明两个变量有因果关系吗?
- 不能这么推。显著只表示在当前样本量下,这么强的线性关系不太可能纯由抽样波动造成,它不区分因果方向,也排不掉第三个变量的影响。常见的情况是「冰淇淋销量和溺水人数正相关」,真正起作用的是气温。要往因果上走,需要时间先后、控制混杂变量的设计或实验分组,单靠一张问卷表算出的 r 办不到。写报告时用「与……呈正相关」这类表述,比写「导致」稳妥。