命名数组的一个维度

时间:2013-11-14 10:31:53

标签: arrays r rename

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'))

但它不起作用。解决方案是什么?

谢谢

2 个答案:

答案 0 :(得分: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

答案 1 :(得分:3)

另外两种方法:

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

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