R语言箱式图的制作代码

Python046

R语言箱式图的制作代码,第1张

#使用并列箱线图进行跨组比较,如图6-12#公式y~A*B则将为类别型变量A和B所有水平的两两组合生成数值型变量y的箱线图, 例子的mpg~cyl表示为四缸、六缸、八缸发动机对每加仑汽油行驶的英里数的影响。boxplot(mpg~cyl,data=mtcars,main="Car Mileage Data",xlab="Number of Cylinders",ylab="Miles Per Gallon")

#添加notch=TRUE,可以得到含凹槽的箱线图, 若两个箱的凹槽互不重叠, 则表明它们的中位数有显著差异; 而

varwidth=TRUE则使箱线图的宽度与它们各自的样本大小成正比。>boxplot(mpg~cyl,data=mtcars,notch=TRUE,varwidth=TRUE,col="red",main="Car Mileage Data",xlab="Number of Cylinders",ylab="Miles Per Gallon")

输出结果如下

R一个很方便的用处是提供了一套完整的统计表集合。函数可以对累积分布函数P(X≤x),概率密度函数,分位函数(对给定的q,求满足P(X≤x) >q的最小x)求值,并根据分布进行模拟

在统计学中,产生随机数据是很有用的,R可以产生多种不同分布下的随机数序列。这些分布函数的形式为rfunc(n,p1,p2,...),其中func指概率分布函数,n为生成数据的个数,p1, p2, . . .是分布的参数数值。上面的表给出了每个分布的详情和可能的缺省值(如果没有给出缺省值,则意味着用户必须指定参数)。

例:用0~1之间的均匀分布产生10个随机点

>runif(10)

[1] 0.961465376 0.0075219250.193619234 0.137027246 0.739370654 0.072907082

[7] 0.674551635 0.6507778110.984664183 0.796723066

大多数这种统计函数都有相似的形式,只需用d、p或者q去替代r,比如密度函数(dfunc(x, ...)),累计概率密度函数(也即分布函数)(pfunc(x,...))和分位数函数(qfunc(p, ...),0<p<1)。最后两个函数序列可以用来求统计假设检验中P值或临界值。例如,显著性水平为5%的正态分布的双侧临界值是:

>qnorm(0.025)

[1] -1.959964

>qnorm(0.975)

————————————————

#灰色预测模型GM(1,1)#用法:#假设数列1 2 3 4 5.5 6 7.5 为已知数据,你要预测后面3项,gm11([1 2 3 4 5.5 6 7.5],10) # 10=7+3# 序列输入格式为:x<-c(1,2,3,4,5.5,6,7.5)gm11<-function(x,k){#x为行向量数据#做一次累加n<-length(x)x1<-numeric(n)for(i in 1:n){x1[i]<-sum(x[1:i])}#x1的均值数列z1<-numeric(n)m<-n-1for(j in 1:m){z1[j+1]<-(0.5*x1[j+1]+0.5*x1[j])}Yn=t(t(x[2:n]))B<-matrix(1,nrow=n-1,ncol=2)B[,1]<-t(t(-z1[2:n]))#solve(M)求M的逆#最小二乘法求解参数列u<-solve(t(B)%*%B)%*%t(B)%*%Yna<-u[1]b<-u[2]#预测x2<-numeric(k)x2[1]<-x[1]for(i in 1:k-1){x2[1+i]=(x[1]-b/a)*exp(-a*i)+b/a}x2=c(0,x2)#还原数据y=diff(x2)y}#调用函数x<-c(1,2,3,4,5.5,6,7.5)gm11(x,10)