2013-11-14 25 views
2
a=array(data=1:8, dim=c(2,2,2), dimnames=NULL) 

我该如何修改这个数组的名字(在它被构造之后)并且只命名这个数组的第三个维度(打印时的层次)?命名一个数组的维度

我试图

a = array(a, dimnames=list(NULL, NULL, c('a','b'))) 
names(a) = list(NULL, NULL, c('a','b')) 

,但它不工作。解决办法是什么?

谢谢

+0

你尝试a.dimnames <-list(NULL,NULL, 'aName')或dimnames(a)< - list(NULL,NULL,'aName') – rags

回答

3
x <- array(data=1:8, dim=c(2,2,2), dimnames=NULL) 
dimnames(x) <- list(NULL, NULL, c("a", "b")) 

# , , a 
# 
#  [,1] [,2] 
# [1,] 1 3 
# [2,] 2 4 
# 
# , , b 
# 
#  [,1] [,2] 
# [1,] 5 7 
# [2,] 6 8 
+0

哦......我很近!谢谢! –

3

两个其他方法:

​​

dimnames(a)[[3]] <- c('a','b')