好文档 - 专业文书写作范文服务资料分享网站

R统计软件详细介绍(中文版)

天下 分享 时间: 加入收藏 我要投稿 点赞

常用lattice绘图函数

函数

xyplot(y?x)dotplot(y?x)barchart(y?x)stripplot(y?x)bwplot(y?x)histogram(?x)

说明

双变量散点图

Cleveland点图(逐行逐列累加图)y对x的条形图一维图,x必须是数值型,y可以是因子箱线图直方图

106.如何绘制三维图?

参考persp(),contour()函数。这里需要注意的三维绘图中第三维坐标的形式。参考第15页中的outer()函数。

107.想把一个数值的矩阵映射为一个颜色方格的矩阵,什么函数?

参考image()和?lled.contour()函数:

x

2

f

r

z

filled.contour(x,y,z)

108.散点图中散点大小同因变量值成比例如何画?

4

6

8

在R中做这类图很简单,因为R的很多绘图参数可以使用变量:

x

2

y

symbols(x,y,circles=y/2,inches=F,bg=x)109.我想为一个数据框的每一列都做Q–Q图?

使用apply()函数作用于矩阵的行或列,且能避免R中的显式循环

1

table

#

wait

for

changing

3

results=apply(table,2,qqnorm)par(ask=FALSE)

110.如何在一个直方图上添加一个小的箱线图?

25

在直方图的空白位置添加另外的小图(像图例一样),仍然使用参数par():

x

2

hist(x)

op

111.如何在R的绘图中加入数学公式或希腊字符?

A参考?plotmath,熟悉LTEX的用户,会发现二者语法非常类似。

4

x

2

;plot(x,type=\)

text(3,2,expression(paste(\(\,degree,\in2003\)))text(4,4,expression(bar(x)==sum(frac(x[i],n),i==1,n)))text(6,6,expression(hat(beta)==(X?t?X)?{.1}?X?t?y))text(8,8,expression(z[i]==sqrt(x[i]?2+y[i]?2)))112.如何在条形图上显示每个bar的数值?

4

如果明白barplot()函数其实是由低级绘图命令rect()函数构造的,那下面的例子也就不难理解了:

1

x

b

3

text(b,x,labels=x,pos=3)113.如何绘制椭圆或双曲线?

根据函数式的基本绘图。直角坐标系下可使用参数方程:

xy

()2+()2=1=?x=asinθ,y=bcosθ,0<θ<2πab

1

t

##

a=1b=2

3

y

plot(x,y,type=’l’)

114.在word里如何使用R生成的高质量绘图?

矢量绘图的效果是最好的,比如eps、pdf,而不是位图(png、jpg、ti?等)。在word里面,可以使

用eps,虽然在屏幕上显示不是很好,但打印效果却不错。

§I统计模型

115.有没有直接计算峰度和偏度的函数?

26

当然自己写一个也费不了太多时间。FBasics包中提供了

skewness()

2

kurtosis()

可以直接计算偏度和峰度。

116.如何做交叉列联表?

table()函数。table(x)为x的频数表;table(x,y)为交叉列联表。

x

2

prop.table(x,1)117.如何做线性回归模型?

线性模型是最核心的经典统计方法,且至今仍然有广泛应用;很多现代统计方法都是在此基础上发展起来的。最简单的线性回归模型为:

yi=α+βxi+??i

其中α为截距项,β为模型的斜率,??为误差项。lm()函数提供了线性回归的计算方法。

lm.swiss

coe?cients:回归系数(矩阵)

residuals:返回模型残差(矩阵)?tted.values:模型拟合值...:...

可以使用如下命令得到列表名称:

1

names(lm.swiss)

summary()和anova()分别返回回归模型的概要信息和方差分析表。

1

summary(lm.swiss)anova(lm.swiss)

#thesameassummary.lm()

提取模型信息的类函数有很多,其他可以参考R-intro中StatisticalmodelsinR一节。

如果处理数据的量很大,可以使用biglm包中的biglm()函数。这个函数可以用于“海量”数据的回归模拟。

118.如何更新模型?

参考update()函数:

27

summary(f0

2

f1

在R里,可以使用计算逐步回归的step()函数。它以计算AIC信息统计量为准则,选取最小的AIC信息统计量来达到逐步回归的目的。

1

utils::example(lm)step(lm.D9)

step函数可使用“both,forward,backward”三种方法,其默认为“backward”。当然你还可以参考add1,drop1函数。

120.R中如何实现分位数回归(QuantileRegression)

参考quantreg和quantregForest包

data(engel)

2

taus

for(iinseq(along=taus)){

rqs[[i]]

tau=taus[i],data=engel)

lines(log10(engel$income),fitted(rqs[[i]]),col=i+1)}legend(\,paste(\=\,taus),inset=.04,

col=2:(length(taus)+1),lty=1)

121.如何得到一个正态总体均值μ的区间估计?

4

6

8

很简单,t.test()函数

1

x

x

2

matrix(rnorm(100,mean=1,sd=0.3),ncol=2))cl

plot(x,col=cl$cluster,pch=3,lwd=1)points(cl$centers,col=1:2,pch=7,lwd=3)

segments(x[cl$cluster==1,][,1],x[cl$cluster==1,][,2],

28

4

6

cl$centers[1,1],cl$centers[1,2])

8

segments(x[cl$cluster==2,][,1],x[cl$cluster==2,][,2],

cl$centers[2,1],cl$centers[2,2],col=2)

10

层次聚类(hclust()):

n

2

(x

#print()

method=\)method=\)

4

hc2

layout(matrix(c(1,1,2,3),nrow=2,byrow=T))plot(hc1);plot(hc2);plot(hc3)

6

聚类过程中我们可能只需要对象的分类信息,那么使用cutree()函数也是不错的选择:

1

cutree(hc,k=1:3)

当然还有专做聚类的包:cluster

1

library(cluster)

clusplot(x,pam(x,2)$clustering)123.如何做主成分分析?stats包中的princomp函数。

(pc.cr

2

plot(pc.cr,type=\

)

#

or

screeplot

#or”barplot”

4

loadings(pc.cr)

princomp()中的参数cor=TRUE表示使用样本相关矩阵作主成分分析,反之使用样本协方差矩

阵。loadings()返回因子荷载。screeplot()绘制碎石图。

124.怎样做因子分析?

在R中,使用factanal()函数对矩阵进行极大似然因子分析。

example(factanal)

125.如何对样本数据进行正态检验?

比较常见的方法:shapiro.test(),ks.test()(Kolmogorov-Smirnov检验),jarque.bera.test()(需要tseries包)。或者参考专门用作正态检验的normtest包,fBasics包中的相关函数。这几个包(包括基础包)大概提供了十几种检验函数。

29

R统计软件详细介绍(中文版)

常用lattice绘图函数函数xyplot(y?x)dotplot(y?x)barchart(y?x)stripplot(y?x)bwplot(y?x)histogram(?x)说明双变量散点图Cleveland点图(逐行逐列累加图)y对x的条形图一维图,x必须是数值型,y可以是因子箱线图直方图106.如何绘
推荐度:
点击下载文档文档为doc格式
6iz252s0h44x67j2pukt
领取福利

微信扫码领取福利

微信扫码分享