(R语言)对象,模式和属性

来源:互联网 发布:平面设计美工招聘 编辑:程序博客网 时间:2024/05/23 18:01

3.1 固有属性:模式和长度

对象是R所进行操作的实体,对象可以是向量、列表等,详见1.6.
对象的模式包括numeri,ccomplex,character,logical,list,function,expression等。可以用mode(object)查看。
对象的长度是对象的另一固有属性。可以用length(object)查看。
attribute(object)可以查看更深入的属性。

模式的转换
在允许的情况下(大多数情况都是允许的),R可以完成各种模式的转换。例如:d<-as.character(z),将数值向量z<-(0:9)转化为字符向量c("0", "1", "2", ..., "9")。as.integer(d)将d转化为数值向量。
R中很多形式为as.something()的函数,可以完成从一个模式向另一个模式的转化,或者是令对象取得它当前模式不具有的某些属性。

3.2 改变对象的长度

> e <- numeric()    产生一个numeric型的空向量e。character()等类似。此时长度为对象0。
此时新添加一个元素会使e的长度自动调整
> e[3] <- 17    令e为一个长度为3的向量(此时,该向量的前两个元素都是NA)
缩短(截断)一个对象的长度,只需要一个赋值命令。因此,若alpha是一个长度为10的对象,下面的命令
> alpha <- alpha[2 * 1:5]

3.3 属性的获取和设置

函数attributes(object)将给出当前对象所具有的所有非基本属性(长度和模式属于基本属性)的一个列表。
函数attr(object,name)可以被用来选取一个指定的属性。除了为某些特殊的目的创建新属性这样特殊的环境下,这些函数很少被用到。
当函数attr()用在赋值语句左侧时,既可以是将对象与一种新的属性关联,也可以是对原有属性的更改。例如
> attr(z,"dim") <- c(10,10)         另R将z作为一个10X10的矩阵看待。

3.4 对象的类别

对象的一个特别属性,类别,被用来指定对象在R编程中的风格。比如:如果对象类别"data.frame"则会以特定方式处理。
unclass()可以去除对象的类别。
summary()可以查看对象的基本信息(min, max, mean, etc.)

0 0
原创粉丝点击