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

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

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

1

integrate(dnorm,?1.96,1.96)integrate(dnorm,?Inf,Inf)

##a

slowly?convergent

integral

3

integrand

5

integrate(integrand,lower=0,upper=Inf)66.如何得到一个列向量?

矩阵转置可以使用函数t(),R中默认x为“integer”类型数据,这时可以用t(t(x))得到列向量:

1

x

;

t(t(x));

;class(x)

class(t(x))class(t(t(x)))

3

行向量、列向量常常会有一个比较容易让人迷糊的地方:

1

x%?%x

计算的是xTx(计算xxT使用%o%或outer()函数)。crossprod()函数能避免这种情况:

1

XT.y

它直接计算XTY,可以看作前者的另一种表达方式,当然crossprod()更为有效8。由于outer()函数的矩阵意义,它常用于三维绘图数据,比如我们计算

??

sinx2+y210×??x2+y2那么对应的R函数计算为:

1

f

参考complex()函数的帮助。

x

2

#x

complex(1,1)

Mod(x);Conj(x)

68.如何生成对角矩阵?

对一个向量使用diag()函数,得到对角线元素为向量的对角矩阵;对整数Z使用此函数得到Z维的单位矩阵。

69.求矩阵的特征值和特征向量的函数是什么?

参考:eigen函数

8当矩阵很大时,会非常明显

??

15

70.如何构造上(下)三角矩阵?

参考函数lower.tri()和upper.tri()。

Rmat

2

Rmat[lower.tri(Rmat)]

71.求立方根如何运算?

x?(1/3)。在R里面sqrt()函数可以计算开平方,故新手容易推测开立方也有函数。事实上R里面

使用?来作幂函数运算。?不但是运算符号,还可以看作是函数:

1

\(x,1/3)

在R中的运算符号包括:

R中的运算符号

数学运算

逻辑运算

+,-,*,/,?,%%,%/%>,<,>=,<=,==,!=加、减、乘、除、乘方、余数、整除大于,小于,大于等于,小于等于,等于,不等于

72.如何求矩阵各行(列)的均值?

如果运算量不是很大,当然可以使用apply()函数。rowMeans()和colMeans()函数可以更快地得到

你要的结果。

1

m

A

3

system.time(B1

73.如何计算组合数或得到所有组合?

????

choose()用于计算组合数n函数combn()可以得到所有元素的组合。使用factorial()计算阶乘。k,74.如何在R里面求(偏)导数?

使用函数D()

f1

2

f2

75.如何求一元方程的根?

使用uniroot()函数,不过uniroot是基于二分法来计算方程根,当初始区间不能满足要求时,会返回错误信息。

1

f

16

如果一元方程的根恰恰是其极值,那么还可以使用optimize()函数来求极值。

f

2

optimize(f,c(?2,2))76.如何模拟高斯(正态)分布数据?

使用rnorm(n,mean,sd)来产生n个来自于均值为mean,标准差为sd的高斯(正态)分布的数

‘’表示累积分布函数,‘’表示分位据。在R里面通过分布前增加字母‘’表示概率密度函数,

数函数,‘’表示产生该分布的随机数。这些分布具体可以参考第20页中“如何做密度曲线”,或

或R-intro中的Probabilitydistributions章节,

r

dpq

help.search(\)

使用这些函数可以很轻松的进行相关的分布的概

率计算,如已知X?N(3,1),计算

P(2??X??5)

利用正态分布的累积分布函数pnorm

1

Densitypnorm(5,3,1)?pnorm(2,3,1)

0.20.30.4计算结果为0.8185946,即右图中阴影的面积。

P(2

§F字符操作

77.R对大小写敏感么?

R中有很多基于Unix的包,故R对大小写是敏感的。可以使用tolower()、toupper()、casefold()

这类的函数对字符进行转化。

1

x

78.R运行结果输出到文件中时,文件名中可以用变量代替吗?

3

5

可以,通过使用paste()函数。

17

1

for(varinletters[1:6]){x

write.table(x,paste(\\,var,\,sep=\))}

#You

will

get

”FOO

a.txt”

...

3

79.在R中如何使用正则表达式(RegularExpressions)

在R中,有三种类型的正则表达式:extendedregularexpressions,使用函数grep(extended=TRUE)(默认);basicregularexpressions,使用grep(extended=FALSE);Perl-likeregularexpressions,使用grep(perl=TRUE)。比如“.”用来匹配任意字符(使用“\\.”来匹配“.”):

grep(\,month.abb)

详细可以参考help(”regex”)。

80.如何在字符串中选取特定位置的字符?

参考substr()函数。

1

substr(\,2,4)

substring(\,1:6,1:6)

这个函数同时支持中文,用她来处理“简称”和“全称”还是一个不错的选择的。

81.如何返回字符个数?

参考nchar。

nchar(month.name[9])

§G日期时间

82.日期可以做算术运算么?

可以。一般我们需要使用as.Date(),as.POSIXct()函数将读取的日期(字符串)转化为“Date”类型数据,“Date”类型数据可以进行算术运算。

1

d1

D1

3

D2

;

D1?D2

difftime(D1,D2,units=\)

83.如何将日期表示为“星期日,22七月2007”这种格式?

5

使用format()函数。

18

1

format((Sys.Date(),format=\%d%B%Y\)

具体format参数可以参考help(strptime)的details部分。

§H绘图相关

84.如何在同一画面画出多张图?

这里提供三种解决方案:

?修改绘图参数,如par(mfrow=c(2,2))或par(mfcol=c(2,2));?更为强大功能的layout函数,它可以设置图形绘制顺序和图形大小;?split.screen()函数。

推荐使用layout()函数,StatisticswithR的一个例子:

1

layout(matrix(c(1,1,1,

2,3,4,

2,3,4),nr=3,byrow=T))

hist(rnorm(25),col=\)hist(rnorm(25),col=\)hist(rnorm(25),col=\)hist(rnorm(25),col=\)85.如何设置图形边缘大小

3

5

7

修改绘图参数par(mar=c(bottom,left,top,right)),bottom,left,top,right四个参数分别是距离bottom,left,top,right的长度,默认距离是c(5,4,4,2)+0.1。或者修改绘图参数par(mai=c(bottom,left,top,right)),以英寸为单位来指定边缘大小。

86.常用的pch符号都有哪些?

pch是plottingcharacter的缩写。pch符号

1

3

5

7

9

1113151719212325

可以使用“0:25”来表示26个标识(参看右图“pch符号”)。当然符号也可以使用#,%,?,|,+,?,.,o,O。值得注意的是,21:25这几个符号可以在points函数使用不同的颜色填充(bg=参数)。

1

024681012141618202224

op

plot(x,sin(x),type=\,bg=par(\))points(x,sin(x),pch=21,cex=1.5,bg=\)

19

3

6iz252s0h44x67j2pukt
领取福利

微信扫码领取福利

微信扫码分享