用R中的字母做一个循环

时间:2015-04-23 06:30:54

标签: r

我想用字母做一个循环。我有一个矩阵(名为' a'),我想拥有所有列名..

k<-arrayInd(2,dim(a))
colnames(a)[k[,1]]
colnames(a)[k[,2]]
colnames(a)[k[,3]]
.
.
.
colnames(a)[k[,n]]

我猜循环将是那样的

aa<-list()
for (i in 1:n) {
aa[[i]]<-colnames(a)[k[,i]]
}

但我没有得到任何结果。我认为循环是可以的,但我必须改变其他的东西

aa<-list()

并替换&#34;列表&#34;与其他东西..

1 个答案:

答案 0 :(得分:2)

假设您有一个矩阵mat,如下所示:

mat <- matrix(1:4, ncol = 2, dimnames = list(letters[1:2], LETTERS[1:2]))

您可以像这样检查其结构:

str(mat)
# int [1:2, 1:2] 1 2 3 4
# - attr(*, "dimnames")=List of 2
# ..$ : chr [1:2] "a" "b"
# ..$ : chr [1:2] "A" "B"

您可以使用以下命令获取列名:

colnames(mat)
# [1] "A" "B"