教育统计中的基本问题

一、教育统计中的基本问题:平均数

几何平均数数,调和平均数都属于平均数,此外还有算术平均数、加权平均数、中数、众数等,它们都可以用来反映数据的集中趋势,统称为集中量数(central tendency)。在教育统计过程中,不同集中量数各有缺点:
算术平均数灵敏,易受极值影响。例如个别低分会影响对整体平均水平的判断。在一些教育心理学实验、学习迁移实验和迷津学习实验观测中,都常会出现极端数情况。
中数计算用不到所有数据,不能进一步计算,受抽样影响较大,不常用。但在心理和教育科研中的实验常不能持续进行、缺少数据或不清楚数据分布情况,中数在这类情况下常被使用。 众数跟中数大体相同。
加权平均数面临权重制定问题。如试题中根据题目难易程度不同赋分,选拔测试中不同科目比例都是加权的体现。但面对复杂教育或心理问题,权重很难确定。

1、几何平均数

几何平均数(geometric mean),记作​Mg,计算基本公式如下:

_g = \sqrt[N] {X_1 \times X_2 \times X_3 \cdots X_N }

式中: ​N为数据个数;​X_i为变量值。
计算时常用取对数法:

lgM_g =\frac {\sum lgX_i}N

当数据间差异较大,且几乎按一定比例关系变化,例如教育经费的逐年增加,学习、阅读的进步数,学生人数的增长数等。一般不用平均数,而是采用平均增长率,如教育经费的平均年增长率,学校人数的年增长率,学习的平均进步率,阅读速度的平均增加率等,都要用到几何平均数计算平均比率。

例1:学习方面进步率

image-20250708223510623

  • 解:

image-20250708223525362
由公式: ​lgM_g = \frac {0.3846}5​=0.07692
求反对数: ​M_g=10^{0.07692}=1.19377
该实验阅读能力平均进步率为1.19377,平均增加比率为​1.19377-1=0.19377

若以​X_I=40为基数,那么学习第六遍应理解多少? 则​X_6=40 \times {1.19377^5} =96.97 \approx 97,若用算数平均数,增加率​\overline X =\frac {5.979}5=1.1958,同样以​X_I=40为基数,则​X_6=40 \times {1.1958^5} =97.8,比实际理解成份多.
此类问题可简化计算:

_g = \sqrt[N-1] {\frac {X_2}{X_1} \times \frac {X_3}{X_2} \times \frac {X_4}{X_3} \cdots \frac {X_N}{X_{N-1}}} = \sqrt[N-1] {\frac {X_N}{X_1}}
N <- 6
data <- c(0.4,0.52,0.65,0.75,0.86,0.97)
Mg <- (0.97/0.4)^(1/(N-1))

例2:学生记单词进步率

image-20250708223559055

  • 解:
N <- 5 
Mg <- (34/20)^(1/4) # 1.141858
## 进步率1.141858-1 =0.141858

例3:学生或人口增长估计

某校连续四年的毕业人数为: 980人,1100 人 ,1200 人 ,1300 人 , 问毕业生 均 增长率是多少? 若该校毕业生一直按此增长率变化,问第五年后的毕业人数是多少 ?

  • 解:
N <- 4
data <- c(980,1100,1200,1300)
## 方法一
Mg <- prod(data[2:4]/data[1:3])^(1/(N-1)) #  1.098767 
## 方法二
Mg <- (1300/980)^(1/3) #  1.098767 
### 增长率1.098767 -1=0.98767

ans <- 1300*(Mg^5) # 2081.959

例4:教育经费增加率

image-20250708223608189

  • 解:
## 由题意 N-1 = 1982-1950 =32
Mg <- (121/10)^(1/32) # 1.081028
## 增长率 1.081028-1 =0.081028
## 1982到1990中间为8年,故N-1=8
ans <- 121*(Mg^8)  # 225.6741

2、调和平均数

调和平均数(harmonic mead),用符号​M_H表示,在计算中先将各个数据取倒数平均,然后再取倒数,故又称为倒数平均数。计算公式是:

M_H = \frac {N}{\sum \frac 1X_i}

式中: ​N为数据个数;​X_i为变量值,不用试验中意义不同。
计算时常用取对数法

在教育研究方面的应用,主要是用来描述学习速度方面的问题。调和平均数作为一种集中量数,在描述速度方面的集中趋势时,优于其他集中量数。
在有关研究学习速度的实验设计中,反应指标一般常取两种形式: 一是工作量固定,记录各被试完成相同工作所用的时间。二是学习时间一定,记录一定时间内各被试完成的工作量。由于反应指标不同,在计算学习速度时也不一样,这是应用调和平均数要特别注意的地方。
学习任务量相同而所用时间不等。这时先要求出单位时间的工作量,并以它为 ​X_i 代入调和平均数公式计算,所得结果就是欲求的平均学习速度。

例1:学习任务量相同而所用时间不等

!image-20250708223619811

  • 解:

假设6名被试者单位时间内完成的作业题数依次为​X_1,X_2 \cdots X_6,则

X_1 = \frac{10}{0.8},X_2 = \frac{10}{1.0} \cdots X_6=\frac{10}{5}

每个被试者完成单位工作所需时间为:

\frac1X_1=\frac{0.8}{10},\frac1X_2=\frac{1.0}{10}\cdots \frac1X_6=\frac{5}{10}

6名被试者完成每到题所需时间总量为:

\sum \frac1X_i=\sum (\frac1X_1+\frac1X_2 +\cdots+\frac1X_6 ) =\sum(\frac{0.8}{10}+\frac{1.0}{10} +\cdots+\frac{5}{10})=\frac65

​N=6得:

M_H=\frac1{\frac16 \times \frac65} =5

6名被试者平均完成作业的速度是每小时5题

N <- 6
works <- 10
times <- c(0.8,1.0,1.2,1.5,2.5,5.0)
per_hour <- works/times
Mh <- N/sum(1/per_hour) # 5

!!!note
此情形中要求6人平均完成10道题的速度,由于每人学习任务量相同都为10题(可理解为单位工作量扩大10倍),可利用计算平均速度的方式计算调和平均数,即:

作业平均速度=\frac{总完成题量}{总时间}= \frac {6 \times 10}{0.8+1.0+1.2+1.5+2.5+5.0} =5

例2则不同
!!!

例2:学习时间相同而工作量不等

image-20250708223628950

  • 解:

假设6名被试者单位时间内解题数依次为​X_1,X_2 \cdots X_6,则

X_1 = \frac{24}{2}=12,X_2 = \frac{20}{2}=10 \cdots X_6=\frac{4}{2}=2

每个被试者完成单位工作所需时间为:

\frac1X_1=\frac{1}{12},\frac1X_2=\frac{1}{10}\cdots \frac1X_6=\frac{1}{2}
M_H== \frac1{\frac16(\frac{1}{12}+\frac{1}{10} +\cdots+\frac{1}{2})}=\frac{720}{147}=4.9

6名被试者平均解题速度是每小时4.9题

N <- 6
works <- c(24,20,16,12,8,4)
times <- 2
per_hour <- works/times
Mh <- N/sum(1/per_hour) # 4.8979

二、教育统计中的基本问题:标准差

标准差和方差是典型的差异量数,用途广泛,主要用来描述数据离中趋势,也称为离散量数(measures dispersion)。全距、百分位差和平均差等也属于差异量数,在教育统计过程中一般只用做预备检查,了解数据大致分布范围,不能进一步用于计算。

1、百分位差和百分位等级

百分位数(percentile)是指量尺上的一个点,在这个点以下的数据个数占了全部数据个数一定百分比。其符号为​P_p

  • 可利用R语言中 quantile()函数直接计算:
data <- seq(1,15,2)
##  1  3  5  7  9 11 13 15
quantile(c(1,3,5,7,9,11,13,15))
##  0%  25%  50%  75% 100% 
## 1.0  4.5  8.0 11.5 15.0 
quantile(data,probs = c(0.25,0.75))
## 25%  75% 
## 4.5 11.5 
quantil(data,probs = c(0.5))
## 50% 
##  8 

百分等级(percentile rank),是指某个百分位数在整个分数分布中所处的百分位置。

  • 计算百分等级:
data <- seq(1,15,2)

x <- 8
Pr <- sum(data < x)/length(data)  # 0.5

x <- 4.5
Pr <- sum(data < x)/length(data)   # 0.25

例:百分位差和百分位等级描述学生成绩

某班依次测验中成绩如下:set.seed(1) round(runif(50,40,100))
image-20250708223803571
那么考多少分可以超过班上一半的同学?某同学考了90分,超过班上多少人?

  • 解:
set.seed(1)
data <- round(runif(50,40,100))

Pp <- quantile(data,probs = c(0.5)) # 70.5
x <- 90
Pr <- sum(data < x)/length(data) # 0.86
## 考70.5分以上可超过一般同学,考90分超过班上86%的学生

2、方差和标准差

方差和标准差是表示数据离散程度最好的指标,应用广泛。
根据切比雪夫定理,对于任何数据集,至少有​1-\frac{1}{h^2}的数据落在平均数的​h个标准差内。例如:一组数据平均数为50,标准差为5,则至少有​1-\frac1{2^2}= 75%的数据落在​50\pm2\times5=35\sim65。如果数据呈正态分布,根据中的​3\sigma经验法则,数值分布在​\sigma​2\sigma​3\sigma以内的百分比为是68.27%、95.45%和99.73%。

  • R语言中 var()计算方差,sd()计算标准差

例:差异系数

image-20250708223811151

  • 解:

变异系数​CV=\frac sX
​CV_{1} = \frac{4.02} {60} =0.067
​CV_{2}= \frac{6.04} {80} =0.0755
五年级的测验分散程度大

3、标准分数

标准分数也叫​Z分数,计算公式:

Z = \frac {x-\overline X}{s}

式中:​X为某一具体分数,​\overline X为平均数,​s为标准差。

​Z分数是一种具有相等单位的量数。它是将原始分数与团体的平均数之差除以标准差所得的商数,是以标准差为单位度量原始分数离开其平均数的分数之上多少个标准差,或是在平均数之下多少个标准差。它是一个抽象值,不受原始测量单位的影响,并可接受进一步的统计处理。
标准分数在标准化考试统计分析中有重要的作用。为了使各考试分数可比和可加,并能准确地反映每个考生成绩在考试总体中所处位置,必须使它们具有相同的单位和参照点。等值意义相同的分数,在教育统计中称之为标准分数或​Z分数
为了避免​Z分数出现负数或小数点,常对​Z分数进行变换:

Z' = aZ+b

​a,b

为常数。

例1:计算Z分数

某班依次测验中成绩如下,甲生100分,乙生80分,问这两生​Z分数是多少少。
image-20250708223820370

set.seed(1) 
data <- round(runif(50,40,100)) 

mean_x <- mean(data)
s <- sd(data)

Z1 <- (100-mean_x)/s  # 1.71
Z2 <- (80-mean_x)/s   # 0.49

例2:利用​Z分数并比较成绩

image-20250708223829691

Za1 <- (70-70)/8
Za2 <- (57-55)/4
Za3 <- (45-42)/5
Za <- Za1+Za2+Za3   #  标准分可加性  1.1

Zb1 <- (90-70)/8
Zb2 <- (51-55)/4
Zb3 <- (40-42)/5
Zb <- Zb1+Zb2+Zb3  #  标准分可加性  1.1

## Za = Zb 两生三门功课总成绩无差别

Note:
image-20250708223838650

三、教育统计中的基本问题:相关关系

  • 积差相关,又称为皮尔逊相关。使用要求:成对数据,等距或等比性质的两连续变量,正态分布,样本数量大于30。例如每个学生的智力和学习成绩,每个人的身高和体重等。任意两个个体之间不能求皮尔逊相关。
  • 斯皮尔曼等级相关。积差相关的延申,精度小于积差相关。使用要求:成对数据,等距或等比性质的两连续变量,数据分布无要求,样本数可小于30。
  • 肯德尔等级相关。用字母​W表示,又称为肯德尔和谐系数,功用与斯皮尔曼等级相关相同,适合于两列以上的等级变量。

1、积差相关

r = \frac {\sum xy}{Ns_Xs_Y}

式中:
​x,y为两变量离均差, ​x = X - \overline X ​Y = Y- \overline Y
​N为成对数据的数目,
​s_X为X​变量的标准差, s_Y为​Y变量的标准差

例1:两学科成绩相关性(皮尔逊相关)

某班50名学生学生某次测验成绩如下,问两科目成绩是否具有一致性。
image-20250708223915789
……

  • 解:
set.seed(1) 
x <- round(runif(50,40,100))
set.seed(2) 
y <- round(runif(50,40,100))

N <- 50
m_x <- x - mean(x)
m_y <- y - mean(y)
sx <- sd(x)
sy <- sd(y)
r1 <- sum(m_x*m_y)/(N*sx*sy) # 0.146

## cor()直接计算
r2 <-cor(x,y,method = "pearson") # 0.149

2、斯皮尔曼等级相关

r_R =1- \frac {6{\sum D^2}}{N(N^2-1)}

式中:
​N为等级个数, ​D指二列成对变量的等级差数 。

例1:两学科成绩相关性(斯皮尔曼相关)

某班10名学生某次测验成绩如下,问两科目成绩是否具有一致性。
image-20250708223928561

  • 解:
set.seed(1) 
x <- round(runif(10,40,100))
set.seed(2) 
y <- round(runif(10,40,100))

N <- 10
D <- rank(x)-rank(y)
r1 <- 1-(6*sum(D^2))/(N*(N^2-1))   # -0.281

## cor()直接计算
r2 <- cor(x,y,method = "spearman")  # -0.289

例2:视听反映是否一致

image-20250708223934540

  • 解:
N <- 10
x <- c(172,140,152,187,139,195,212,164,149,146)
y <- c(179,162,153,189,181,220,210,182,178,170)

D <- rank(x)-rank(y)
r1 <- 1-(6*sum(D^2))/(N*(N^2-1))   # 0.7090909

## cor()直接计算
r2 <- cor(x,y,method = "spearman")  # 0.7090909
 

3、肯德尔等级相关

同一评价者无相同等级评定时,W的计算公式:

W = \frac {s}{ \frac {1}{12}K^2(N^3-N)}

式中:
​s=\sum(R_i-\frac{\sum R_i}{N})^2
​R_i代表评价对象获得的K个等级之和;
​K代表等级评定者数;
​N代表被等级评定的对象数目。

同一评价者有相同等级评定时,W的计算公式:

W = \frac {s}{ \frac {1}{12}K^2(N^3-N)-K \sum T}

其中:
​\sum T = \sum\frac{n_{ij}^3-n_{ij}}{12}​n_{ij}为第​i个评价者的评定结果中第​j个重复等级的相同等级数。

​W介于0到1之间,W=1表示K个评价者意见完全一致,0<W<1代表K个评价者意见存在一定关系,但不完全一致,W=0表示K个评价者意见完全不一致。

例1:作文评分标准掌握是否一致

image-20250708223950926

  • 解:
data <- data.frame(K1 = c(4,1,2.5,6,2.5,5,7),
                   K2 = c(5,1,2,5,3,5,7),
                   K3 = c(3.5,1.5,1.5,5,3.5,7,6),
                   K4 = c(5,2,2,4,2,6,7),
                   K5 = c(4,1,2,5,3,6,7)
                   )
rownames(data) <- LETTERS[1:7]
N <- 7
K <- 5

R_i <- rowSums(sapply(data, rank))
s <- sum( (R_i-sum(R_i)/N)^2 )

## T_ij计算
T_ij <- function(x){

  tmp <- table(x)
  n <- tmp[tmp >= 2]
  T_ij <- (n^3-n)/12
  
  return(as.numeric(T_ij))
}
T_ij_sum <- sum(unlist(sapply(data,T_ij))) # 5.5

W <- s/(K^2*(N^3-N)/12-K*T_ij_sum) # 0.9256
 # 五位评分这对七篇作文的评价标准比较一致

例2:对颜色喜爱程度是否一致

假设有10人对7种颜色的喜爱程度进行评级,最喜欢为7,最不喜欢为1,结果如下表,问这10人对颜色的爱好是否一致。
image-20250708224000892

## 下数据模拟10人对"红","橙","黄"喜爱程度一致,计算W结果为0.84
set.seed(1)
data <- data.frame(K1 = c(7,6,5,sample(1:4,4)),
                   K2 = c(7,6,5,sample(1:4,4)),
                   K3 = c(7,6,5,sample(1:4,4)),
                   K4 = c(7,6,5,sample(1:4,4)),
                   K5 = c(7,6,5,sample(1:4,4)),
                   K6 = c(7,6,5,sample(1:4,4)),
                   K7 = c(7,6,5,sample(1:4,4)),
                   K8 = c(7,6,5,sample(1:4,4)),
                   K9 = c(7,6,5,sample(1:4,4)),
                   K10 = c(7,6,5,sample(1:4,4))
)
rownames(data) <- c("红","橙","黄","绿","蓝","青","紫")

## 下数据模拟10人对所有颜色喜爱程度一致,计算W结果为1
## data <- data.frame(K1 = 7:1,
##                    K2 = 7:1,
##                    K3 = 7:1,
##                    K4 = 7:1,
##                    K5 = 7:1,
##                    K6 = 7:1,
##                    K7 = 7:1,
##                    K8 = 7:1,
##                    K9 = 7:1,
##                    K10 = 7:1
## )
## 
## rownames(data) <- c("红","橙","黄","绿","蓝","青","紫")

N <- 7
K <- 10

R_i <- rowSums(sapply(data, rank))
s <- sum( (R_i-sum(R_i)/N)^2 )

## T_ij计算计算
T_ij <- function(x){
  
  tmp <- table(x)
  n <- tmp[tmp >= 2]
  T_ij <- (n^3-n)/12
  
  return(as.numeric(T_ij))
}
T_ij_sum <- sum(unlist(sapply(data,T_ij))) # 结果为0 (同一评价者无相同等级评定)

W <- s/(K^2*(N^3-N)/12-K*T_ij_sum) # 0.84
 # 从W值看,这10个人对颜色喜爱具有较高一致性
 

四、二项分布

二项分布:​n次独立试验中,每次试验某时间出现的概率为​p,某件事不出现的概率为​q(等于​1-p),则对于某件事出现​X次的概率分布为:

b(x, n, p)=\mathrm{C}_{n}^{x} p^{x} q^{n-x}= \frac{n !}{x !(n-x) !}

​X是服从二项分布的随机变量,则​E(X)=np,D(X)=np(1-p)
二项分布满足 ​p < q,np \geqslant 5​p>q,nq \geqslant 5时,二项分布接近正态分布。

二项分布在教育研究中,主要用于解决含有机遇性质的问题。

例1. 判断题是否是猜测作答

有10道判断题,问答题者答对几题才能认为他是真会,或者说答对几题才能认为不是出于猜测因素?

猜错与猜对的概率 ​p=q=0.5,np =5,此二项接近正态分布。

\mu=n p=10 \times 0.5=5 \\ \sigma=\sqrt{n p q}=\sqrt{10 \times 0.5 \times 0.5}=1.58

由正态分布概率,当Z=4.645时,该店一下包含全体的95%
用原始分数表示​\mu+1.645 \sigma=5+1.645 \times 1.58=7.6=8,即10道题中猜对8道题以下的可能性为95%,猜对8-10道题的概率只有5%。因此可以推论说答对8道题以上者不是凭猜测(但做此结论,仍然有5%的可能会犯错。)

此问题可以直接用R语言中 binom()二项分布函数计算。
pbinom(q, size, prob)
qbinom(p, size, prob)

# qbinom(p, size, prob)
qbinom(0.95,10,0.5) # 8

例2. 选择题是否是猜测作答

有10道单项选择题,每题4个选项,问答题者答对几题才能认为他是真会,或者说答对几题才能认为不是出于猜测因素?

此题中 ​n=10, p=0.25,q =0.75, np<5,此题不接近正态分布,因直接用二项分布函数计算。

qbinom(0.95,10,0.25) # 5

例3. 猜对题数与概率

p <-  0.25
n <- c(10,15,30,40,60)
n_p <- qbinom(0.95,n,p)
n_q <- pbinom(n_p -1,n,p,lower.tail = F)
题目总数(单选4选1) 猜对题数 大于猜对题数概率
10 5 7.8%
15 7 5.7%
30 12 5.1%
40 15 5.4%
60 21 5.4%
p <-  0.5
n <- c(10,15,30,40,60)
n_p <- qbinom(0.97,n,p)
n_q <- pbinom(n_p -1,n,p,lower.tail = F)
题目总数(判断对错) 猜对题数 大于猜对题数概率
10 8 5.5%
15 11 6.0%
30 20 5.0%
40 26 4.0%
60 37 4.6%