您好,欢迎访问三七文档
R软件复习20121L1关于R1.R初始状态载入包列表包描述stats常用统计函数graphics基础绘图函数grDevices基础或grid图形设备utilsR工具函数datasets基础数据集methods用于R对象和编程工具的方法和类的定义base基础函数可用函数search()查看当时加载的程序包2.怎样寻找可用的函数主菜单中的帮助——R函数帮助(文本),只能搜索上述七个程序包内的函数主菜单中的帮助——搜索帮助,只能搜索29个标准程序包中的函数主菜单中的帮助——search.r-project.org,可搜索志愿程序包中关键字,以找到可用的函数或通过R的镜像网站中的TaskViews中查找L2数据对象与运算1.数据对象类型(1)数值型(numeric)数据的形式是实数,可以写成整数、小数或以科学记数表示的数据。(2)逻辑型(logical)当逻辑运算为真时,返回值为TRUE;当逻辑运算为假时,返回值为FALSE,且只能取这两个值。(3)字符型(character)这种数据的形式是夹在双引号或单引号''之间的字符。(4)复数型(complex)R支持复数运算,表示法形如a+bi。(5)缺失值(missingvalue)2.数据对象的构造R软件复习20122R中的数据对象可以构造为六种形式:向量(vector)、矩阵(matrix)、数组(array)、列表(list)、数据框(dataframes)、因子(factor)(1)向量①向量的赋值方法②常用函数:length()返回向量的长度,mode()返回向量的数据类型a:b产生等差数列:seq()生成等间隔的数列rep()生成重复的数列计算向量x和y的内积x*yx%*%yt(x)%*%ycrossprod()计算向量x和y的外积x%*%t(y)x%o%ytcrossprod(x,y)outer(x,y)(2)矩阵①生成矩阵matrix()对一个向量使用diag()函数,得到对角线元素为向量的对角矩阵;对整数Z使用此函数得到Z维的单位矩阵。②矩阵的运算A*B矩阵A、B对应元素相乘A%*%B两矩阵相乘crossprod(A,B)同t(A)%*%Btcrossprod(A,B)同A%*%t(B)solve(A)求矩阵A的逆阵(3)数组array()生成数组数组也可以用“+”、“-”、“*”、“/”、“%*%”以及函数等进行运算,其方法和矩阵相类似。注意的是,参加运算的数组一般应该维度相同。(4)列表list()生成列表可用列表名[[元素名]]或列表名$元素名的格式,引用列表元素(5)数据框data.frame()生成数据框rownames()定义数据框各行的名称edit()或fix()对列表或数据框中的数据进行编辑、修改attach()可以将数据框中的变量“连接”到内存中,这样便于数据框数据R软件复习20123的调用detach()取消链接(6)因子factor()生成因子table()得到因子中每个水平的频数tapply()对因子中的每个水平进行计算3.数据的读写(1)写数据getwd()找到工作目录setwd()改变工作目录(也可直接用主菜单中文件——改变工作目录)c()和scan()写入数据write()用于写纯文本格式的数据文件(扩展名为.txt或.data)write.table()用于写列表数据或数据框数据write.csv()用于写CSV格式的Excel数据文件(2)读数据scan()可以直接读取纯文本文件数据read.table()可以读取表格形式的文件读取其它格式的数据,如Minitab、Stata、SAS、SPSS等,需调入程序包foreigndata()列出程序包datasets中所有的数据集data(数据集名)装载数据集4.编写程序大多数时候不需要自己编写程序,因为R有很多程序包和函数,而且每天都在增加。但遇到一些复杂的计算问题,需要编写自己的函数函数定义的基本形式:函数名=function(参数1,参数2……){函数体函数返回值}(1)条件语句句法:if(条件)表达式if(条件)表达式1else表达式2(2)循环语句①for循环R软件复习20124句法:for(变量in向量)表达式②while循环句法:while(条件)表达式③repeat循环句法:repeat表达式L3数据的描述性分析1.描述统计量(1)位置的度量mean()均值sort()排序median()中位数summary()计算出单组数据的均值和五数fivenum()计算五数quantile()计算百分位数,默认是四分位数(2)分散程度的度量var()方差sd()标准差100*sd()/mean()变异系数max()-min()极差quantile(,3/4)-quantile(,1/4)或IQR()四分位差sd()/sqrt(n)标准误(3)分布形状的度量偏度和峰度的计算,即可自己编写函数,也可用一些志愿程序包如FBasics或moments中的函数skewness()和kurtosis()直接计算。此外,fBasics程序包的函数basicStats()提供了几乎上面所有的描述统计量2.数据的分布(1)分布函数见课件在分布名称的前面加上不同的前缀表示不同的意义:d——概率密度函数f(x)或分布律pkp——分布函数F(x)q——分布函数的反函数F-1(p),即给定概率,求对应的分位点R软件复习20125r——产生相同分布的随机数(2)图形展示hist()直方图density()求核密度估计函数ecdf(x)求经验分布函数qqnorm()和qqline()画QQ图和QQ线stem()茎叶图boxplot()箱线图(3)正态性检验比较常用的方法有shapiro.test(),ks.test()(Kolmogorov-Smirnov检验),jarque.bera.test()(需要tseries包)。或者参考专门用作正态检验的志愿程序包normtest或fBasics中的相关函数。这几个包(包括标准包)大概提供了十几种检验函数。3.R中的绘图命令在R中有两种绘图函数:(1)高级绘图函数创建一个新的图形(2)低级绘图函数在已有的图形上添加元素.(3)交互式图形函数允许交互式地用定点设备(如鼠标)在一个已经存在的图上添加图形信息或者提取图形信息。另外绘图参数提供了丰富的绘图选项,可以使用缺省值或者用函数par()修改。更高级的图形可使用grid和lattice程序包实现。(1)高级绘图函数plot()绘出散点图、直方图或箱线图pairs()和coplot()对多个变量绘图image(x,y,z,...)绘出三维图形的映象contour(x,y,z,...)绘出三维图形的等值线persp(x,y,z,...)绘出三维图形的表面曲线(2)低级绘图函数points()lines()添加点或线text()添加标记abline()polygon()添加直线title()axis()添加题目或标签(3)locator()交互式绘图函数R软件复习20126(4)par()改变绘图参数L4参数估计和假设检验1.点估计(1)矩估计根据原理写出方程或方程组,使用函数uniroot()或multiroot()(志愿程序包rootSolve)对其求解(2)极大似然估计方法一:类似矩估计方法,根据原理写出方程或方程组,对其求解方法二:可看作无约束优化问题的求解,使用函数optimize()、optimise()或nlm()方法三:很多程序包中有可直接进行极大似然估计的函数,如mle()(标准包stats4),maxLik(志愿包maxLik)2.区间估计和假设检验t.test()一个正态总体的均值的区间估计和假设检验(方差未知的情况)var.test()两个正态总体的均值差的区间估计和假设检验(方差未知的情况)其它情况需自己编写函数)binom.test()二项分布总体的区间估计和假设检验L5回归分析1.基本函数lm()lm()的结果是一个包含回归信息的列表,它包含以下信息:add1aliasanovacoefdeviancedrop1effectsfamilyformulakappalabelsplotpredictprintprojresidualsstepsummary可以使用上述函数得到相关信息如果处理数据的量很大,可以使用biglm包中的biglm()函数。这个函数可以用于“海量”数据的回归模拟。2.逐步回归step()以计算AIC信息统计量为准则,选取最小的AIC信息统计量来进行逐步回归add1(),drop1()增加或减少自变量,进行逐步回归R软件复习201273.广义线性回归glm()其中的参数family为分布族,包括正态分布(gaussian)、二项分布(binomial)、泊松分布(poission)和伽玛分布(gamma)。4.非线性回归nls(),nlm()非线性最小二乘估计maxLik非线性极大似然估计(在志愿包maxLik中)L6方差分析aov(x~a)单因素方差分析aov(x~a+b)没有交互作用的双因素方差分析aov(x~a+b+a:b)有交互作用的双因素方差分析aov(x~a*b)同上pairwise.t.test()进行多重比较,以找出哪组或哪几组均值不同L7应用多元分析1.判别分析可自己编写程序或使用标准包MASS中的函数lda()(Lineardiscriminantanalysis)、qda()(Quadraticdiscriminantanalysis)2.聚类分析kmeans()K均值聚类hclust()层次聚类还有一个专门做聚类的标准包,cluster3.主成分分析princomp()可用样本的相关矩阵或协方差矩阵进行主成分分析4.因子分析factanal()因子分析5.典型相关分析cancor()两组随机变量的典型相关分析L8时间序列分析R软件复习20128随机模型估计acf(),pacf()估计序列的自相关和偏自相关函数,并做出图形。ar()AR模型或VAR模型(stats)arima()ARIMA模型(stats)arima.sim()模拟一个ARIMA过程(stats)arma()ARMA模型(tseries)garch()GARCH(p,q)模型(tseries)HoltWinters()季节指数平滑模型
本文标题:R软件复习
链接地址:https://www.777doc.com/doc-5687401 .html