为什么数值对象上的属性返回NULL?
问题描述:
> y <- 1
> attributes(y)
NULL
虽然class(y)
回报numeric
,我们知道class
是一个属性,那么为什么attributes(y)
回报NULL
?为什么数值对象上的属性返回NULL?
答
R有许多属性,看?attributes
:
注意,一些属性(即类,评论,暗淡,dimnames,名称,row.names和TSP)...
意义attributes
只是其中的一个。期望每个对象默认分配一个attributes
(attributes(obj) <- value
)将是错误的。
“数字”这里是一个隐式类('?class'),它不是作为实际属性存储的(作为-eg-在'structure(1,class =“numeric”)') –
从[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