如何在 r 中计算样本和总体方差
方差是衡量数据值围绕均值分布情况的一种方法。
求总体方差的公式为:
σ 2 = Σ ( xi – μ) 2 / N
其中 μ 是总体平均值,xi 是总体的第i个元素,N 是总体规模,Σ 只是一个奇特的符号,表示“总和”。
求样本方差的公式为:
s 2 = Σ ( xi – x ) 2 / (n-1)
其中x是样本均值,x i是第 i个样本元素,n 是样本大小。
示例:计算 R 中的样本和总体方差
假设我们在 R 中有以下数据集:
#define dataset
data <- c(2, 4, 4, 7, 8, 12, 14, 15, 19, 22)
我们可以使用 R 中的var()函数计算样本方差:
#calculate sample variance
var(data)
[1] 46.01111
我们可以通过简单地将样本方差乘以 (n-1)/n 来计算总体方差,如下所示:
#determine length of data
n <- length (data)
#calculate population variance
var(data) * (n-1)/n
[1] 41.41
请注意,总体方差将始终小于样本方差。
在实践中,我们通常计算数据集的样本方差,因为收集整个总体的数据是不寻常的。
示例:计算多列样本的方差
假设我们在 R 中有以下数据框:
#create data frame
data <- data.frame(a=c(1, 3, 4, 4, 6, 7, 8, 12),
b=c(2, 4, 4, 5, 5, 6, 7, 16),
c=c(6, 6, 7, 8, 8, 9, 9, 12))
#view data frame
data
ABC
1 1 2 6
2 3 4 6
3 4 4 7
4 4 5 8
5 6 5 8
6 7 6 9
7 8 7 9
8 12 16 12
我们可以使用sapply()函数来计算数据框中每一列的样本方差:
#find sample variance of each column
sapply(data, var)
ABC
11.696429 18.125000 3.839286
而我们可以使用下面的代码来计算每一列的样本标准差,简单来说就是样本方差的平方根:
#find sample standard deviation of each column
sapply(data, sd)
ABC
3.420004 4.257347 1.959410
您可以在此处找到更多 R 教程。