实验一:R 语言简介与描述性统计
实验目的
- 熟悉 R 语言及其集成开发环境 Rstudio。
- 利用 R 语言编写计算样本数据均值、中位数、方差、标准差、极差和偏峰度等基本统计量的函数。
- 利用 R 语言绘制样本数据直方图、箱线图等图形。
编写一个用于计算样本中位数(median)的 R 语言函数
#中位数#
z<-function(x){ #建立函数求中位数
n<-length(x) #获取样本容量,记为n
X<-sort(x) #对x进行排序
if(n/2==0){x1<-floor((X[(n/2)]+X[(n/2)+1])/2)} #判断n的奇偶性,并用不同方式返回中位数的值
else{x1<-X[(n+1)/2]}
return(x1)
}
- 编写两个 R 语言函数,分别计算样本偏度(
skewness)与峰度(
kurtosis)
#偏度#
z1<-function(x){ #建立函数
n<-length(x) #获取样本容量
x_mean<-sum(x)/n #求样本均值
m2<-(sum((x-x_mean)^2))/n #计算所需参数
m3<-(sum((x-x_mean)^3))/n
bs<-m3/(m2^(3/2)) #计算偏度
return(bs) #返回偏度的值
}
#峰度#
z2<-function(x){ #建立函数
n<-length(x) #获取样本容量
x_mean<-sum(x)/n #求样本均值
m2<-(sum((x-x_mean)^2))/n #计算所需参数
m4<-(sum((x-x_mean)^4))/n
bk<-m4/(m2^2) #计算峰度
return(bk) #返回峰度的值
}
- 在正态总体 N(100,10)中随机产生 30 个数作为样本 1;在样本 1 中随机有放回地抽取 10 个数作
为样本 2。绘制样本 1 的直方图;计算样本 2 的均值、中位数、方差、标准差、极差以及偏峰度。
#样本1和样本2的数据处理#
sample_norm1<-rnorm(30,mean = 100,sd = 10) #获得样本1
sample_2<-sample(sample_norm1,10,replace = TRUE) #获得样本2
hist(sample_norm1) #绘制样本1的直方图
x1<-mean(sample_2) #分别计算样本2的均值、中位数、方差、标准差、极差、偏峰度
x2<-median(sample_2)
x3<-var(sample_2)
x4<-sd(sample_2)
x5<-max(sample_2)-min(sample_2)
x6<-skewness(sample_2)
x7<-kurtosis(sample_2)
a<-c(x1,x2,x3,x4,x5,x6,x7) #输出样本2的各项数据
print("均值 中位数 方差 标准差 极差 偏度 峰度")
a