为什么数值对象上的属性返回NULL?

问题描述:

> y <- 1 
> attributes(y) 
NULL 

虽然class(y)回报numeric,我们知道class是一个属性,那么为什么attributes(y)回报NULL为什么数值对象上的属性返回NULL?

+1

“数字”这里是一个隐式类('?class'),它不是作为实际属性存储的(作为-eg-在'structure(1,class =“numeric”)') –

+0

从[R语言定义](https://cran.r-project.org/doc/manuals/R-lang.html#Attributes):“除'NULL' _can_ [我的重点]之外的所有对象都有一个或多个属性”。请注意“_can_”。另见[哈德利书中的属性部分](http://adv-r.had.co.nz/Data-structures.html#attributes)。 – Henrik

R有许多属性,看?attributes

注意,一些属性(即类,评论,暗淡,dimnames,名称,row.names和TSP)...

意义attributes只是其中的一个。期望每个对象默认分配一个attributesattributes(obj) <- value)将是错误的。