预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10
亲,该文档总共80页,到这已经超出免费预览范围,如果喜欢就直接下载吧~
如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
会计学常量向量(Vector)与赋值向量运算可以用向量作为函数自变量,
sqrt、log、exp、sin、cos、tan等函数都可以用向量作自变量,结果是对向量的每一个元素取相应的函数值
函数min和max分别取向量自变量的最小值和最大值,
函数sum计算向量自变量的元素和,
函数mean计算均值,
函数var计算样本方差(分母为n-1),
函数sd计算标准差
如果求var(x)而x是矩阵,则结果为样本协方差阵。(行向量为观测值)负数开根号要补充成复数形式
>sqrt(-4)
[1]NaN#数值运算中,返回非数值的
非凡值
warning:……
>sqrt(-4+0i)
[1]2isort(x)返回x的元素从小到大排序的结果向量
order(x)返回使得x从小到大排列的元素下标向量(x[order(x)]等效于sort(x))。
>x=c(2,4,8,6,10)
>order(x)
[1]12435
>x[order(x)]
[1]246810最大最小值及其查询
>x<-c(5,2,4,1,10)
>min(x)
[1]1
>max(x)
[1]10
>which.min(x)
[1]4
>which.max(x)
[1]5
产生有规律的数列seq函数是更一般的等差数列函数。
如只指定一个自变量n>0,则seq(n)相当于1:n。指定两个自变量时,第一量是开始值,第二量是结束值,如seq(-2,3)是从-2到3,默认公差为1。有参数名的参数的次序任意,如:
>seq(0,by=0.7,to=2)
可以用length参数指定数列长度,
如>seq(from=10,length=5)产生10到14。
seq函数还可以用一种seq(along=向量名)的格式,这时只能用这一个参数,产生该向量的下标序列,如:另一个类似的函数是rep,它可以重复第一个自变量若干次,例如:
>rep(x,3)
第一个参数名为x,第二个参数名为times(重复次数)。
>rep(x,each=3)
[1]1.004.006.25
此外numeric(n)可以产生一个长度为n的零向量
向量可以取逻辑值,如:
>a=c(T,T,F)
>a
[1]TRUETRUEFALSE
当然,逻辑向量往往是一个比较的结果,如:
>x<-c(1.00,4.00,6.25)
>b=x>3
>b
[1]FALSETRUETRUE一个向量与常量比较大小,结果还是一个向量,元素为每一对比较的结果逻辑值。
两个向量也可以比较,如:
>log(10*x)
>log(10*x)>x
[1]TRUEFALSEFALSE
比较运算符包括<,<=,>,>=,==,!=。两个逻辑向量可以进行与(&)、或(|)运算,结果是对应元素运算的结果。对逻辑向量x计算!x表示取每个元素的非。
例如:>x=c(1,4,6.25,1.6)
>(x>1.5)&(x<3)
[1]FALSEFALSEFALSETRUE
>x=c(T,F,F)
>!x
[1]FALSETRUETRUE
判断一个逻辑向量是否都为真值的函数是all,如:
>all(log(10*x)>x)
[1]FALSE
判断是否其中有真值的函数是any,如:
>any(log(10*x)>x)
[1]TRUE函数is.na(x)用来判断x的每一个元素是否缺失。
如>is.na(c(1,NA,3))
[1]FALSETRUEFALSE
逻辑值可以强制转换为整数值,TRUE变成1,FALSE变成0。
例如,age>65为老年人,否则为年轻人,
可以用c(“young”,“old”)[(age>65)+1]表示。
当年龄大于65时age>65等于TRUE,加1则把TRUE转换为数值型的1,结果得2,于是返回第二个下标处的“old”。否则等于0+1下标处的“young”。
>age=c(89,20,10,66);c('young','old')[(age>65)+1];
[1]"old""young""young""old"缺失数据
NA表示缺失、NaN表示不确定的数
注意下面例子的比较
>x<-c(0/1,0/0,1/0,NA);x
[1]0NaNInfNA
>is.nan(x)
[1]FALSETRUEFALSEFALSE
>is.na(x)
[1]FALSETRUEFALSETRUE
>is.finite(x)
[1]TRUEFALSEFALSEFALSE
>is.infinite(x)
[1]FALSEFALSETRUEFALSE
字符型向量连接的自变量可以是向量,这时各对应元素连接起来,长度不相同时较短的向量被重复使用。自变量可以是数值向量,连接时自动转换成适当的字符串表示,例如:>paste(c("X","Y"),"=",1:4