为什么“名称”的属性表现不同?

时间:2016-04-09 08:57:17

标签: r attributes names

我是R的新手,我做了一些谷歌,但我找不到答案。

var <- 1:2
attr(var,"name")<-'gg'
attr(var,"names")<-'gg'

但是,当我检查 var

的属性时
attributes(var)
$name
[1] "gg"

$names
[1] "gg" NA  

为什么属性名称有NA?对于var [1]?

我在ubuntu上使用 R studio,版本0.99.491

1 个答案:

答案 0 :(得分:4)

当考虑像1:2这样的基本原子向量时,names会附加到每个单独的元素上。这意味着,如果您不将names提供给特定元素,则R会使用NA值填充它们。即:

var <- 1:2
names(var) <- c("a","b")
var
#   a b 
#   1 2 

var <- 1:2
names(var) <- c("a")
var
#   a <NA> 
#   1    2 

var <- 1:6
names(var) <- c("a","b")
var
#   a    b <NA> <NA> <NA> <NA> 
#   1    2    3    4    5    6