- 众数(Mode)
一组数据中出现次数最多的数值
R:计算样本(5,6,6,6,7,7,8)的众数
sample_data=c(5,6,6,6,7,7,8)
freqdata=table(sample_data)
freqdata
sample_data
5 6 7 8 -----------原始数据的值
1 3 2 1 -----------频数
mode_data_loc=which.max(freqdata)
mode_data_loc
6 -----------原始数据的值
2 -----------原始数据的位置
mode_data=names(mode_data_loc)
mode_data
[1] “6”
好像R中没有直接求众数的函数可以用,需要先求各个数值出现的频数(用table()),然后找最大频数对应位置的数值(names(which.max())),就是众数。
对于Python或者R,which()返回的一般都是位置
- 最小和最大值
#求最小值
sample_data=c(1,2,1,0,3,4,8)
which.min(sample_data)
[1] 4 ----------最小值的位置
min(sample_data)
[1] 0
----------最小值
#求最大值
which.max(sample_data)
[1] 7 ----------最大值的位置
max(sample_data)
[1] 8 ----------最大值
- 中位数和平均值
中位数(Medians):是指将统计总体中的各个变量按大小顺序排列起来,形成一个数列,处于变量数列中间位置的变量值就称为中位数。
sort(sample_data)
[1] 0 1 1 2 3 4 8
median(sample_data)
[1] 2
平均值(Mean)
mean(sample_data)
[1] 2.714286
#对于平均工资来说,中位数比平均值有意义。而股票中的“市盈动”可能会用到平均值。
- 平均值和数学期望
离散型随机变量的一切可能的取值Xi与对应的概率Pi之积的和称为该离散型随机变量的数学期望,记为E(X)。数学期望是最基本的数学特征之一。它反映随机变量平均取值的大小。
简单来讲,变量所有可能取值结果的平均值,就是数学期望。
这里的平均是指以概率为权的加权平均
- 四分位数(Quantile)
四分位数(Quantile):用于描述任何类型的数据,尤其是偏态数据的离散程度,即将全部数据从小到大排列,正好排列在上1/4位置上叫四分位数,下1/4位置上的数就叫做下四分位数。
sort(sample_data)
[1] 0 1 1 2 3 4 8
quantile(sample_data)
0% 25% 50% 75% 100%
0.0 1.0 2.0 3.5 8.0
- 求和
x=c(1,2,3,NA,4,5)
y=sum(x)
y
[1] NA
如果向量中有NA,则直接sum就是NA;需要移除NA后sum,用sum()函数中的na.rm参数,或者用na.omit()。
#na.rm=TRUE
y=sum(x,na.rm = TRUE)
y
[1] 15
#na.omit()
y=sum(na.omit(x))
y
[1] 15
- Summary汇总信息
sample_data
[1] 1 2 1 0 3 4 8
summary(sample_data)
Min. 1st Qu. Median Mean 3rd Qu. Max.
0.000 1.000 2.000 2.714 3.500 8.000
想尝试用summary处理多组向量,于是加了一个sample_data2,直接添加到summary()函数中,结果不变,依旧只是sample_data的汇总信息。
sample_data2=c(4,6,3,4,8,1,3)
summary(sample_data, sample_data2)
Min. 1st Qu. Median Mean 3rd Qu. Max.
0.000 1.000 2.000 2.714 3.500 8.000
但是如果将两个向量合并成一个矩阵(Matrix),就可以同时输出两列的summary信息了,当然,也可以指定某一列的信息。
mt=cbind(sample_data,sample_data2)
mt
sample_data sample_data2
[1,] 1 4
[2,] 2 6
[3,] 1 3
[4,] 0 4
[5,] 3 8
[6,] 4 1
[7,] 8 3
summary(mt)
sample_data sample_data2
Min. :0.000 Min. :1.000
1st Qu.:1.000 1st Qu.:3.000
Median :2.000 Median :4.000
Mean :2.714 Mean :4.143
3rd Qu.:3.500 3rd Qu.:5.000
Max. :8.000 Max. :8.000
- 方差Variance
方差用来度量随机变量和均值之间的偏离程度。
方差是各个数据与平均数之差的平方的平均(以概率为权的加权平均)
比如1,2,3,4,5这五个数的平均值是3
方差=((1-3)²+(2-3)²+(3-3)²+(4-3)²+(5-3)²) * 1/5 =2
R语言求方差:
var(c(1,2,3,4,5))
[1] 2.5 -------------<>2
几乎所有统计软件计算方差都会扣除一个自由度
#方差=((1-3)²+(2-3)²+(3-3)²+(4-3)²+(5-3)²) * 1/4 =2.5
- 标准差Standard Deviation
标准差是方差的算术平方根sqrt(var(X))。标准差能反映一个数据集的离散程度。
对于样本数据,R语言用“-1”的方法(扣除一个自由度)
R语言命令:
sd(c(1,2,3,4,5))
[1] 1.581139
#验证
sd(c(1,2,3,4,5))
[1] 1.581139