误差

误差作为一个客观存在的现象,在我们意识到这个世界的存在时就已经存在了。在我们用某种量具进行数值测量的时候,误差已然存在,哪怕是再精确的量具都无法消灭误差,只是尽可能让误差接近零。这就是理想和现实的差异。
我们把误差可以分为抽样误差和非抽样误差两种。

一、抽样误差

抽样误差(Sampling Error)是指由抽样的随机性引起的样本结果与总体真值之间的误差。由于抽样本身就是一种用少量”样本”代表总体的行为,所以无法避免”比偏概全”的情况发生。也就是说,基于抽样的分析对基于总体的分析来说是一种样本缩减的次优解,牺牲的是抽样误差,得到的是统计计算效率。我们只要从这种角度来看待这两种方案的取舍与代偿性就好。
不仅是在同一次的抽样与总体之间会产生统计差异,在不同的抽样批次之间也会有差异。
假设在10000个零件中有1000个残次品,我们随机抽取100个进行合格率检验。第1轮抽取的100个零件中有10个残次品,残次率是10%;第2轮抽取的100个零件中有11个残次品,残次率为11%。然后,进行第3轮、第4轮……大部分的样本结果会落在一个区间内。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import random

# 10000个零件
population = [0 for i in range(10000)]
# 1000个残次品
for i in range(1000):
population[i] = 1

# 50轮抽样
for iterator in range(50):
sample = [0 for i in range(100)]
for i in range(100):
sample[i] = population[random.randrange(10000)]
count = 0
for i in range(100):
count += sample[i]
print(float(count)/100) # 次品率

把结果画成一幅图,横坐标是比率,纵坐标是轮数,很明显能看出这是一个正态分布的情况。有95%的轮数都取在中心0.1左右各0.06的范围内。在0.1-0.06到0.1+0.06的范围内,和全部残次品真实值0.1(10000个零件中有1000个残次品)来比,0.06就是抽样误差。
这个实验很简单,但仍然说明了一个问题:这种随机误差在一轮抽样中其实是很难发现的。例如,在某轮抽样中100个零件中发现有22个残次品,那么这22%的残次率和真值相差多少?要想找到真值的位置,需要进行多次抽样。

二、非抽样误差

造成非抽样误差的原因比较复杂,有很多种情况。

1、抽样框误差

在对动态事物进行观察研究时都会出现抽样框误差。例如,在规定时间内进行全国人口普查,最理想的情况是在某一时刻对全国人口进行”快照”,将这一瞬时值的状态“冷冻”起来进行普查。但是,这种”冷冻”其实根本不可能实现,也就不可能在规定的时间和地域实现真正的”快照”,而在动态中产生重记和漏记的可能性就会存在。这就是抽样框误差。

2、回答误差

回答误差在对人的访谈中最容易出现。
回答者对问题的理解是否与提问的初衷想符?回答者是不是理解了问题?这些都不容易确定。在回答问题的时候,回答者需要进行回忆,而这种回忆是否准确也不容易确定。还有一些问题,例如回答者由于羞愧、虚荣、道德压力等原因给出了违背自身真实想法的答案,也属于误差。

3、无回答误差

无回答误差可以直接理解为”访谈对象交白卷”。在机器收集数据的过程中,会由于各类故障而生成空白的数据记录,这同样属于无回答误差。此外,还有由于调查人员操作不当而产生的漏记、错记,由于误导回答者而产生的误差,以及由量具和测量方式产生的测量误差等。

0%